Bug#900248: nvidia-driver: update to 390.59 breaks direct rendering

Luca Boccassi bluca at debian.org
Wed May 30 23:30:09 BST 2018


Control: reassign -1 nvidia-driver

On Thu, 2018-05-31 at 00:12 +0200, Peter De Wachter wrote:
> On Wed, May 30, 2018 at 10:54 PM, Luca Boccassi <bluca at debian.org>
> wrote:
> > Given there have been multiple reports, I'll upload a new version
> > of
> > glx-alternatives that moves the module redirection from
> > modules/linux
> > to modules/drivers (where there is no clash).
> > 
> > Before I do that, given you had the issue and moving the module
> > fixes
> > it, could you please double check that moving the symlink from
> > modules/linux to modules/drivers (NOT modules/extensions, and
> > putting
> > back what was there) doesn't cause more problems?
> > 
> > Still not sure why my Sid installation was working just fine...
> 
> No, that doesn't work for me.
> 
> Check xorg-server-1.20.0/hw/xfree86/loader/loadmod.c. It's some very
> confused code. There's a friendly-looking array:
> 
> /* Standard set of module subdirectories to search, in order of
> preference */
> static const char *stdSubdirs[] = {
>     "",
>     "input/",
>     "drivers/",
>     "extensions/",
>     NULL
> };
> 
> But that comment is a lie. The FindModulesInSubDir() function
> recurses
> in subdirectories! So the loader will start with the first entry of
> that array, but it will search recursively and find either
> extensions/libglx.so or linux/libglx.so depending on readdir()
> order... This is why this bug occurred only on some systems and not
> on
> others. It also means that your proposed fix won't work.
> 
> In xserver 1.19, the linux/ subdir was _prepended_ to the subdir
> list,
> so there the nvidia libglx.so was reliably selected.
> 
> I don't know how to fix this without patching the xserver code. Maybe
> it's possible to manipulate the search path with an xorg.conf
> fragment?
> 
> Best regards,
> Peter

..lol - all of this did sound strangely familiar. I went rummaging in
my git directory, and look what I've found...

https://patchwork.freedesktop.org/patch/86051/

Of course that was duly ignored.

I don't expect they'll give a damn this time around either, despite the
obvious regression, so I won't even try - and we can't ask the
overworked Xorg maintainers to keep out of tree patches just for non-
free drivers.

Fortunately another user reported a possible alternative, if you have
time could you please try to drop a nvidia.conf in
/usr/share/X11/xorg.conf.d with the following content:

Section "OutputClass"
        Identifier      "Nvidia Modules"
        MatchDriver     "nvidia-drm"
        Driver          "nvidia"
        Option          "AllowEmptyInitialConfiguration" "true"
        ModulePath      "/usr/lib/nvidia"
EndSection

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=900428

As before also restore the original libglx.so in modules/extension, and
remove the Nvidia symlink altogether.

-- 
Kind regards,
Luca Boccassi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: This is a digitally signed message part
URL: <http://alioth-lists.debian.net/pipermail/pkg-nvidia-devel/attachments/20180530/8689db95/attachment-0001.sig>


More information about the pkg-nvidia-devel mailing list