Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.bugs.dist > #1019828 > unrolled thread

Bug#966557: Blacklist nvidia-modeset and nvidia-drm

Started byJoel Johnson <mrjoel@lixil.net>
First post2020-07-30 19:00 +0200
Last post2020-08-05 18:20 +0200
Articles 6 — 2 participants

Back to article view | Back to linux.debian.bugs.dist


Contents

  Bug#966557: Blacklist nvidia-modeset and nvidia-drm Joel Johnson <mrjoel@lixil.net> - 2020-07-30 19:00 +0200
    Bug#966557: Blacklist nvidia-modeset and nvidia-drm Joel Johnson <mrjoel@lixil.net> - 2020-08-03 17:10 +0200
    Bug#966557: Blacklist nvidia-modeset and nvidia-drm Joel Johnson <mrjoel@lixil.net> - 2020-08-04 01:30 +0200
      Bug#966557: Blacklist nvidia-modeset and nvidia-drm Felix Dörre <debian@felixdoerre.de> - 2020-08-04 02:30 +0200
    Bug#966557: Blacklist nvidia-modeset and nvidia-drm Joel Johnson <mrjoel@lixil.net> - 2020-08-05 17:40 +0200
    Bug#966557: Blacklist nvidia-modeset and nvidia-drm Joel Johnson <mrjoel@lixil.net> - 2020-08-05 18:20 +0200

#1019828 — Bug#966557: Blacklist nvidia-modeset and nvidia-drm

FromJoel Johnson <mrjoel@lixil.net>
Date2020-07-30 19:00 +0200
SubjectBug#966557: Blacklist nvidia-modeset and nvidia-drm
Message-ID<Ayk4p-7BV-1@gated-at.bofh.it>
Package: bumblebee
Version: 3.2.1-22
Severity: important

With more recent nvidia drivers and Debian packages of 
nvidia-kernel-support, the nvidia-modeset and nvidia-drm modules are 
attempted to be loaded. This causes the driver to always be loaded. 
Locally I've added those two modules to the 
/etc/modprobe.d/bumblebee.conf to blacklist them in addition to the 
currently listed modules.

[toc] | [next] | [standalone]


#1020392

FromJoel Johnson <mrjoel@lixil.net>
Date2020-08-03 17:10 +0200
Message-ID<AzKga-4zL-13@gated-at.bofh.it>
In reply to#1019828
On 2020-07-31 03:03, Andreas Beckmann wrote:
> On 7/30/20 6:41 PM, Joel Johnson wrote:
>> With more recent nvidia drivers and Debian packages of
>> nvidia-kernel-support, the nvidia-modeset and nvidia-drm modules are
>> attempted to be loaded. This causes the driver to always be loaded.
>> Locally I've added those two modules to the
>> /etc/modprobe.d/bumblebee.conf to blacklist them in addition to the
>> currently listed modules.
> 
> While this additional blacklisting sounds technically correct, I'm
> curious why the driver gets loaded automatically in a bumblebee setup.
> 
> Please send the output of these commands:
> 
> 	update-glx --display nvidia
> 	update-glx --display glx
> 
> Do you have bumblebee-nvidia installed?
> 
> 
> Andreas

I do have the bumblebee-nvidia package installed, version 
3.2.1-22~bpo10+1 matching the bumblebee package. All of the related 
nvidia package versions are:

$(dpkg -l | grep -i nvidia | awk '{print $2 " - " $3}')
bbswitch-dkms - 0.8-9~bpo10+1
bumblebee - 3.2.1-22~bpo10+1
bumblebee-nvidia - 3.2.1-22~bpo10+1
glx-alternative-nvidia - 1.1.0~bpo10+1
libaccinj64-10.1:amd64 - 10.1.243-6~bpo10+1
libcuda1:amd64 - 440.100-1~bpo10+1
libcuinj64-10.1:amd64 - 10.1.243-6~bpo10+1
libnvidia-cfg1:amd64 - 440.100-1~bpo10+1
libnvidia-fatbinaryloader:amd64 - 440.100-1~bpo10+1
libnvidia-glcore:amd64 - 440.100-1~bpo10+1
libnvidia-ml1:amd64 - 440.100-1~bpo10+1
libnvidia-ptxjitcompiler1:amd64 - 440.100-1~bpo10+1
nvidia-alternative - 440.100-1~bpo10+1
nvidia-installer-cleanup - 20151021+12~bpo10+1
nvidia-kernel-common - 20151021+12~bpo10+1
nvidia-kernel-dkms - 440.100-1~bpo10+1
nvidia-kernel-support - 440.100-1~bpo10+1
nvidia-legacy-check - 440.100-1~bpo10+1
nvidia-modprobe - 418.56-1
nvidia-persistenced - 418.56-1
nvidia-profiler - 10.1.243-6~bpo10+1
nvidia-smi - 440.100-1~bpo10+1
nvidia-support - 20151021+12~bpo10+1
nvidia-vdpau-driver:amd64 - 440.100-1~bpo10+1
nvtop - 1.0.0-1
primus - 0~20150328-10~bpo10+1
xserver-xorg-video-nvidia - 440.100-1~bpo10+1

The command outputs are included below.

Thanks,
Joel

$(update-glx --display nvidia):

nvidia - auto mode
   link best version is /usr/lib/nvidia/current
   link currently points to /usr/lib/nvidia/current
   link nvidia is /usr/lib/nvidia/nvidia
   slave nvidia--libcuda.so-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libcuda.so
   slave nvidia--libcuda.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libcuda.so.1
   slave nvidia--libglxserver_nvidia.so is 
/usr/lib/nvidia/libglxserver_nvidia.so
   slave nvidia--libnvidia-cfg.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/nvidia/libnvidia-cfg.so.1
   slave nvidia--libnvidia-ml.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libnvidia-ml.so.1
   slave nvidia--libnvidia-ptxjitcompiler.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.1
   slave nvidia--libvdpau_nvidia.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/vdpau/libvdpau_nvidia.so.1
   slave nvidia--nvidia-blacklists-nouveau.conf is 
/etc/nvidia/nvidia-blacklists-nouveau.conf
   slave nvidia--nvidia-drm-outputclass.conf is 
/etc/nvidia/nvidia-drm-outputclass.conf
   slave nvidia--nvidia-load.conf is /etc/nvidia/nvidia-load.conf
   slave nvidia--nvidia-modprobe.conf is /etc/nvidia/nvidia-modprobe.conf
   slave nvidia--nvidia-smi is /usr/bin/nvidia-smi
   slave nvidia--nvidia-smi.1.gz is /usr/share/man/man1/nvidia-smi.1.gz
   slave nvidia--nvidia_drv.so is /usr/lib/nvidia/nvidia_drv.so
/usr/lib/nvidia/current - priority 440
   slave nvidia--libcuda.so-x86_64-linux-gnu: 
/usr/lib/x86_64-linux-gnu/nvidia/current/libcuda.so
   slave nvidia--libcuda.so.1-x86_64-linux-gnu: 
/usr/lib/x86_64-linux-gnu/nvidia/current/libcuda.so.1
   slave nvidia--libglxserver_nvidia.so: 
/usr/lib/nvidia/current/libglxserver_nvidia.so
   slave nvidia--libnvidia-cfg.so.1-x86_64-linux-gnu: 
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-cfg.so.1
   slave nvidia--libnvidia-ml.so.1-x86_64-linux-gnu: 
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-ml.so.1
   slave nvidia--libnvidia-ptxjitcompiler.so.1-x86_64-linux-gnu: 
/usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-ptxjitcompiler.so.1
   slave nvidia--libvdpau_nvidia.so.1-x86_64-linux-gnu: 
/usr/lib/x86_64-linux-gnu/nvidia/current/libvdpau_nvidia.so.1
   slave nvidia--nvidia-blacklists-nouveau.conf: 
/etc/nvidia/current/nvidia-blacklists-nouveau.conf
   slave nvidia--nvidia-drm-outputclass.conf: 
/etc/nvidia/current/nvidia-drm-outputclass.conf
   slave nvidia--nvidia-load.conf: /etc/nvidia/current/nvidia-load.conf
   slave nvidia--nvidia-modprobe.conf: 
/etc/nvidia/current/nvidia-modprobe.conf
   slave nvidia--nvidia-smi: /usr/lib/nvidia/current/nvidia-smi
   slave nvidia--nvidia-smi.1.gz: /usr/lib/nvidia/current/nvidia-smi.1.gz
   slave nvidia--nvidia_drv.so: /usr/lib/nvidia/current/nvidia_drv.so

$(update-glx --display glx):
glx - auto mode
   link best version is /usr/lib/nvidia
   link currently points to /usr/lib/nvidia
   link glx is /usr/lib/glx
   slave glx--libEGL.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libEGL.so.1
   slave glx--libGL.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libGL.so.1
   slave glx--libGLESv1_CM.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libGLESv1_CM.so.1
   slave glx--libGLESv2.so.2-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libGLESv2.so.2
   slave glx--libGLX_indirect.so.0-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libGLX_indirect.so.0
   slave glx--libglxserver_nvidia.so is 
/usr/lib/xorg/modules/extensions/libglxserver_nvidia.so
   slave glx--libnvidia-cfg.so.1-x86_64-linux-gnu is 
/usr/lib/x86_64-linux-gnu/libnvidia-cfg.so.1
   slave glx--nvidia-blacklists-nouveau.conf is 
/etc/modprobe.d/nvidia-blacklists-nouveau.conf
   slave glx--nvidia-drm-outputclass.conf is 
/usr/share/X11/xorg.conf.d/nvidia-drm-outputclass.conf
   slave glx--nvidia-load.conf is /etc/modules-load.d/nvidia.conf
   slave glx--nvidia-modprobe.conf is /etc/modprobe.d/nvidia.conf
   slave glx--nvidia_drv.so is 
/usr/lib/xorg/modules/drivers/nvidia_drv.so
/usr/lib/mesa-diverted - priority 5
   slave glx--libEGL.so.1-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libEGL.so.1
   slave glx--libGL.so.1-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1
   slave glx--libGLESv1_CM.so.1-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libGLESv1_CM.so.1
   slave glx--libGLESv2.so.2-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libGLESv2.so.2
   slave glx--libGLX_indirect.so.0-x86_64-linux-gnu: 
/usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0
/usr/lib/nvidia - priority 100
   slave glx--libEGL.so.1-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libEGL.so.1
   slave glx--libGL.so.1-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1
   slave glx--libGLESv1_CM.so.1-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libGLESv1_CM.so.1
   slave glx--libGLESv2.so.2-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libGLESv2.so.2
   slave glx--libglxserver_nvidia.so: 
/usr/lib/nvidia/libglxserver_nvidia.so
   slave glx--libnvidia-cfg.so.1-x86_64-linux-gnu: 
/usr/lib/x86_64-linux-gnu/nvidia/libnvidia-cfg.so.1
   slave glx--nvidia-blacklists-nouveau.conf: 
/etc/nvidia/nvidia-blacklists-nouveau.conf
   slave glx--nvidia-drm-outputclass.conf: 
/etc/nvidia/nvidia-drm-outputclass.conf
   slave glx--nvidia-load.conf: /etc/nvidia/nvidia-load.conf
   slave glx--nvidia-modprobe.conf: /etc/nvidia/nvidia-modprobe.conf
   slave glx--nvidia_drv.so: /usr/lib/nvidia/nvidia_drv.so

[toc] | [prev] | [next] | [standalone]


#1020452

FromJoel Johnson <mrjoel@lixil.net>
Date2020-08-04 01:30 +0200
Message-ID<AzS42-P6-7@gated-at.bofh.it>
In reply to#1019828
On 2020-08-03 15:13, Andreas Beckmann wrote:
> On 8/3/20 5:00 PM, Joel Johnson wrote:
>> On 2020-07-31 03:03, Andreas Beckmann wrote:
>>> While this additional blacklisting sounds technically correct, I'm
>>> curious why the driver gets loaded automatically in a bumblebee 
>>> setup.
> 
>> $(update-glx --display glx):
>> glx - auto mode
>>   link best version is /usr/lib/nvidia
>>   link currently points to /usr/lib/nvidia
>>   link glx is /usr/lib/glx
>> [...]
> 
> Hmm, that should have been a bumblebee alternative, but that is not
> available in your case.
> 
> Does that change if you run
>   dpkg-reconfigure glx-alternative-nvidia
> manually?

There is no apparent change in output when running that command. 
Further, I'm only showing two registered alternatives for glx via 
update-alternatives --config glx.

There are 2 choices for the alternative glx (providing /usr/lib/glx).

   Selection    Path                    Priority   Status
------------------------------------------------------------
* 0            /usr/lib/nvidia          100       auto mode
   1            /usr/lib/mesa-diverted   5         manual mode
   2            /usr/lib/nvidia          100       manual mode

Joel

[toc] | [prev] | [next] | [standalone]


#1020454

FromFelix Dörre <debian@felixdoerre.de>
Date2020-08-04 02:30 +0200
Message-ID<AzT05-1n8-1@gated-at.bofh.it>
In reply to#1020452
I've got a slight clue, what could be wrong here:

The posted update-glx --display glx shows the following line:

/usr/lib/nvidia - priority 100
   slave glx--libGL.so.1-x86_64-linux-gnu: 
/usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1

but none libGLX_nvidia.so.0. From the maintainer-script however having 
at least one of libGL provided by nvidia or libGLX_nvidia present is 
required for the bumblebee alternative to be installed:
        libGL_nvidia_enabler="
                 $(add_multiarch_slave /usr/lib "" libGL.so.1 /usr/lib 
nvidia/)
                 $(add_multiarch_slave /usr/lib "" libGLX_nvidia.so.0 
/usr/lib "")
....
         if echo "$libGL_nvidia_enabler" | grep -q "slave" ; then
                 bumblebee=1
         fi
...
         if [ -n "$bumblebee" ]; then
                 # enable the alternative for GL usage via bumblebee 
(NVIDIA's libGL.so.1 available)
                 update-alternatives --install /usr/lib/glx glx 
/usr/lib/nvidia/bumblebee $prio_bumblebee \
....

I hope this helps to understand what's wrong in this case.

-- 
Kind regards,
Felix Dörre

[toc] | [prev] | [next] | [standalone]


#1020673

FromJoel Johnson <mrjoel@lixil.net>
Date2020-08-05 17:40 +0200
Message-ID<AAtGh-6Vd-3@gated-at.bofh.it>
In reply to#1019828
On 2020-08-04 15:47, Andreas Beckmann wrote:
> On 8/4/20 1:49 AM, Felix Dörre wrote:
>> I've got a slight clue, what could be wrong here:
>> 
>> The posted update-glx --display glx shows the following line:
> [...]
>> but none libGLX_nvidia.so.0. From the maintainer-script however having
> [...]
>> I hope this helps to understand what's wrong in this case.
> 
> Good point!
> 
> Does anyone remember why bumblebee-nvidia depends on
>   nvidia-driver* | nvidia*-kernel-dkms
> 
> (complete Depends: bumblebee (= 3.2.1-25), glx-alternative-nvidia (>=
> 0.6.92), nvidia-driver | nvidia-tesla-450-driver |
> nvidia-tesla-440-driver | nvidia-tesla-418-driver |
> nvidia-legacy-390xx-driver | nvidia-legacy-340xx-driver |
> nvidia-driver-any | nvidia-kernel-dkms | nvidia-tesla-450-kernel-dkms |
> nvidia-tesla-440-kernel-dkms | nvidia-tesla-418-kernel-dkms |
> nvidia-legacy-390xx-kernel-dkms | nvidia-legacy-340xx-kernel-dkms)
> 
> That allows for a broken bumblebee-nvidia installation
>     nvidia-kernel-dkms + bumblebee-nvidia
> but we need at least the following additional driver components:
> * xserver-xorg-video-nvidia
> * nvidia-driver-libs
> 
> Joel, if you install the nvidia-driver metapackage, everything should 
> be
> fine for you.

Thanks, I'll comment out the additional blacklist entries and test with 
that package installed. Those lines aren't harmful in any other way that 
I see, but just unexpected from your original response?

Joel

[toc] | [prev] | [next] | [standalone]


#1020675

FromJoel Johnson <mrjoel@lixil.net>
Date2020-08-05 18:20 +0200
Message-ID<AAuj0-7nY-11@gated-at.bofh.it>
In reply to#1019828
On 2020-08-05 09:56, Andreas Beckmann wrote:
> On 8/5/20 5:30 PM, Joel Johnson wrote:
>> Thanks, I'll comment out the additional blacklist entries and test 
>> with
>> that package installed. Those lines aren't harmful in any other way 
>> that
>> I see, but just unexpected from your original response?
> 
> Correct. The additional blacklist entries should be completely 
> harmless,
> I was just curious to investigate why you needed them because in the
> "expected" bumblebee-nvidia setup they should not be needed at all. I
> just learned that we allow some "unusual" bumblebee-nvidia setups (like
> yours) that were probably not intended (and will likely be disabled in 
> a
> future upload).

In initial testing I installed the additional nvidia metapackage, 
commented out the additional lines in my /etc/modprobe.d/bumblebee.conf, 
regenerated initramfs, and rebooted. That does seem to have worked as 
neither the modeset or drm drivers appear to be loaded automatically.

Updating of the dependencies and/or addition of the additional module 
blacklists as an additional safety check works for me, thanks!

Joel

[toc] | [prev] | [standalone]


Back to top | Article view | linux.debian.bugs.dist


csiph-web