Package: virtualbox Version: 5.2.6-dfsg-2 Severity: normal Tags: patch Dear Maintainer,
I am running Windows 10 guest and the screen flickers when something is (re)drawn, basically it's unusable. Relevant configuration to reproduce: 1) nVidia drivers on the host. 2) virtualbox guest additions with 3D acceleration enabled. 3) enabled 3D accelaration in the Windows 10 machine settings. One workaround is to disable 3D acceleration, but here I found a better solution: https://techblog.devlat.eu/2017/04/07/screen-flickering-in-virtualbox-with-3d-enabled/ in particular it says: With nVidia drivers on the host, a race condition happens, causing buffers to be swapped (i.e. picture to be shown) before rendering is completed by the client, hence the flickering. The only workaround is to change (comment out actually) a single line in VirtualBox source and recompile it. After recompilation is done, it is actually possible to just replace a single freshly compiled file, VBoxOGLrenderspu.so, which is located in /usr/lib/virtualbox/. No need to uninstall the “original” VirtualBox and install the self-compiled one. The patch is just one line: https://www.virtualbox.org/attachment/ticket/13653/vbox-NVIDIA-fix-v2.patch.txt --- /home/alexey/vbox-orig/VirtualBox-5.0.0_BETA4/./src/VBox/HostServices/SharedOpenGL/render/renderspu_glx.c 2015-05-18 18:02:05.000000000 +0300 +++ ./src/VBox/HostServices/SharedOpenGL/render/renderspu_glx.c 2015-05-22 23:33:33.000000000 +0300 @@ -1922,11 +1922,10 @@ XSync(window->visual->dpy, 0); } } } -#define CR_RENDER_FORCE_PRESENT_MAIN_THREAD void renderspu_SystemVBoxPresentComposition( WindowInfo *window, const struct VBOXVR_SCR_COMPOSITOR_ENTRY *pChangedEntry ) { /* the CR_RENDER_FORCE_PRESENT_MAIN_THREAD is actually inherited from cocoa backend impl, * here it forces rendering in WinCmd thread rather than a Main thread. Perhaps this patch can be included in Debian. Thanks! -- System Information: Debian Release: buster/sid APT prefers testing APT policy: (900, 'testing'), (500, 'stable'), (50, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.14.0-3-amd64 (SMP w/8 CPU cores) Locale: LANG=en_DK.utf8, LC_CTYPE=en_DK.utf8 (charmap=UTF-8), LANGUAGE=en_DK.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages virtualbox depends on: ii adduser 3.116 ii iproute2 4.14.1-1 ii libc6 2.26-4 ii libcurl3-gnutls 7.57.0-1 ii libdevmapper1.02.1 2:1.02.145-4.1 ii libgcc1 1:7.2.0-19 ii libgsoap-2.8.49 2.8.49-1 ii libpng16-16 1.6.34-1 ii libpython3.6 3.6.4-3 ii libsdl1.2debian 1.2.15+dfsg2-0.1 ii libssl1.1 1.1.0f-3 ii libstdc++6 7.2.0-19 ii libvncserver1 0.9.11+dfsg-1 ii libx11-6 2:1.6.4-3 ii libxcursor1 1:1.1.15-1 ii libxext6 2:1.3.3-1+b2 ii libxml2 2.9.4+dfsg1-6.1 ii libxmu6 2:1.1.2-2 ii libxt6 1:1.1.5-1 ii procps 2:3.3.12-3 ii python3 3.6.4-1 ii python3.6 3.6.4-3 ii virtualbox-dkms [virtualbox-modules] 5.2.6-dfsg-2 ii zlib1g 1:1.2.8.dfsg-5 Versions of packages virtualbox recommends: ii libgl1 1.0.0-1.1 ii libqt5core5a 5.9.2+dfsg-7 ii libqt5opengl5 5.9.2+dfsg-7 ii libqt5widgets5 5.9.2+dfsg-7 ii virtualbox-qt 5.2.6-dfsg-2 Versions of packages virtualbox suggests: ii vde2 2.3.2+r586-2.1 ii virtualbox-guest-additions-iso 5.2.6-1 -- no debconf information