[Pkg-virtualbox-devel] Bug#889030: virtualbox: Windows10 guest flickers with nVidia drivers, there's a patch

Marius Mikucionis mmikucionis at gmail.com
Thu Feb 1 10:40:35 UTC 2018


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


More information about the Pkg-virtualbox-devel mailing list