Hello.
I am testing suse-prime, and bumblebee on a test laptop.
Optimus ASUS g750JZ
My question is just how to remove any nvidia piece of software so that I can say that the nvidia driver is removed.
The current situation is :
-
suse-prime has been removed
-
bbswitch has been removed
-
bumblebee has been removed
-
nvidia-computeG04 has been removed
-
nvidia-gfxG04-kmp-default has been removed
-
nvidia-glG04 has been removed
-
x11-video-nvidiaG04 has been removed
-
Mesa-dri-nouveau is installed
-
libdrm_nouveau2 is installed
-
libdrm_nouveau2-32bit is installed
-
libvdpau_nouveau is installed
-
xf86-video-nouveau is installed
-
kernel boot parameter is : GRUB_CMDLINE_LINUX_DEFAULT=“resume=/dev/disk/by-label/LNX_SWAP showopts elevator=deadline ipv6.disable=1 plymouth.enable=0 nomodeset”
- command ‘grub2-mkconfig -o /boot/grub2/grub.cfg’ has been run
- command ‘mkinitrd’ has been run
After rebooting it seems that some nvidia modules are still in used
localhost:~ sudo modprobe -r nvidia
modprobe: FATAL: Module nvidia is in use.
Here after is a list of some commands relative to graphics.
[sudo] password for root:
.
.
----------------
.
- 1 - lsmod | grep -i nvidia
.
----------------
nvidia_drm 45056 0
nvidia_modeset 1056768 1 nvidia_drm
nvidia 14671872 1 nvidia_modeset
drm_kms_helper 204800 2 i915,nvidia_drm
drm 491520 4 i915,nvidia_drm,drm_kms_helper
ipmi_msghandler 65536 2 nvidia,ipmi_devintf
.
.
----------------
.
- 2 - lshw -c video
.
----------------
*-display
description: 3D controller
product: GK104M [GeForce GTX 880M]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:16 memory:ec000000-ecffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:e000(size=128) memory:ed000000-ed07ffff
*-display UNCLAIMED
description: VGA compatible controller
product: Crystal Well Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 08
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list
configuration: latency=0
resources: memory:ed400000-ed7fffff memory:80000000-8fffffff ioport:f000(size=64) memory:c0000-dffff
.
.
----------------
.
- 3 - modinfo -F filename : echo "lshw -c video | awk '/configuration: driver/{print }' | cut -d= -f2"
.
----------------
modinfo -F filename nvidia
/lib/modules/4.12.14-lp151.28.20-default/updates/nvidia.ko
.
.
----------------
.
- 4 - modinfo $(modprobe --resolve-alias nvidia)
.
----------------
filename: /lib/modules/4.12.14-lp151.28.20-default/updates/nvidia.ko
alias: char-major-195-*
version: 390.129
supported: external
license: NVIDIA
suserelease: openSUSE Leap 15.1
srcversion: C9CBE920F0195665AFA8A5C
alias: pci:v000010DEd00000E00sv*sd*bc04sc80i00*
alias: pci:v000010DEd*sv*sd*bc03sc02i00*
alias: pci:v000010DEd*sv*sd*bc03sc00i00*
depends: ipmi_msghandler
retpoline: Y
vermagic: 4.12.14-lp151.28.20-default SMP mod_unload modversions
parm: NVreg_Mobile:int
parm: NVreg_ResmanDebugLevel:int
parm: NVreg_RmLogonRC:int
parm: NVreg_ModifyDeviceFiles:int
parm: NVreg_DeviceFileUID:int
parm: NVreg_DeviceFileGID:int
parm: NVreg_DeviceFileMode:int
parm: NVreg_UpdateMemoryTypes:int
parm: NVreg_InitializeSystemMemoryAllocations:int
parm: NVreg_UsePageAttributeTable:int
parm: NVreg_MapRegistersEarly:int
parm: NVreg_RegisterForACPIEvents:int
parm: NVreg_CheckPCIConfigSpace:int
parm: NVreg_EnablePCIeGen3:int
parm: NVreg_EnableMSI:int
parm: NVreg_TCEBypassMode:int
parm: NVreg_UseThreadedInterrupts:int
parm: NVreg_EnableStreamMemOPs:int
parm: NVreg_EnableBacklightHandler:int
parm: NVreg_RestrictProfilingToAdminUsers:int
parm: NVreg_EnableUserNUMAManagement:int
parm: NVreg_EnableIBMNPURelaxedOrderingMode:int
parm: NVreg_MemoryPoolSize:int
parm: NVreg_KMallocHeapMaxSize:int
parm: NVreg_VMallocHeapMaxSize:int
parm: NVreg_IgnoreMMIOCheck:int
parm: NVreg_RegistryDwords:charp
parm: NVreg_RegistryDwordsPerDevice:charp
parm: NVreg_RmMsg:charp
parm: NVreg_AssignGpus:charp
.
.
----------------
.
- 5 - lspci -nnk | grep -e NVIDIA -e VGA -A2
.
----------------
00:02.0 VGA compatible controller [0300]: Intel Corporation Crystal Well Integrated Graphics Controller [8086:0d26] (rev 08)
Subsystem: ASUSTeK Computer Inc. Device [1043:157d]
Kernel modules: i915
--
01:00.0 3D controller [0302]: NVIDIA Corporation GK104M [GeForce GTX 880M] [10de:1198] (rev a1)
Subsystem: ASUSTeK Computer Inc. Device [1043:157d]
Kernel driver in use: nvidia
.
.
----------------
.
- 6 - hwinfo --gfxcard
.
----------------
14: PCI 02.0: 0300 VGA compatible controller (VGA)
[Created at pci.386]
Unique ID: _Znp.T0yuS2eFrPD
SysFS ID: /devices/pci0000:00/0000:00:02.0
SysFS BusID: 0000:00:02.0
Hardware Class: graphics card
Model: "Intel Crystal Well Integrated Graphics Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x0d26 "Crystal Well Integrated Graphics Controller"
SubVendor: pci 0x1043 "ASUSTeK Computer Inc."
SubDevice: pci 0x157d
Revision: 0x08
Memory Range: 0xed400000-0xed7fffff (rw,non-prefetchable)
Memory Range: 0x80000000-0x8fffffff (ro,non-prefetchable)
I/O Ports: 0xf000-0xf03f (rw)
Memory Range: 0x000c0000-0x000dffff (rw,non-prefetchable,disabled)
IRQ: 255 (no events)
Module Alias: "pci:v00008086d00000D26sv00001043sd0000157Dbc03sc00i00"
Driver Info #0:
Driver Status: i915 is active
Driver Activation Cmd: "modprobe i915"
Config Status: cfg=new, avail=yes, need=no, active=unknown
24: PCI 100.0: 0302 3D controller
[Created at pci.386]
Unique ID: VCu0.MfCj7rI+fJ6
Parent ID: vSkL.V_RmGycvUj1
SysFS ID: /devices/pci0000:00/0000:00:01.0/0000:01:00.0
SysFS BusID: 0000:01:00.0
Hardware Class: graphics card
Model: "nVidia GK104M [GeForce GTX 880M]"
Vendor: pci 0x10de "nVidia Corporation"
Device: pci 0x1198 "GK104M [GeForce GTX 880M]"
SubVendor: pci 0x1043 "ASUSTeK Computer Inc."
SubDevice: pci 0x157d
Revision: 0xa1
Driver: "nvidia"
Driver Modules: "nvidia"
Memory Range: 0xec000000-0xecffffff (rw,non-prefetchable)
Memory Range: 0xc0000000-0xcfffffff (ro,non-prefetchable)
Memory Range: 0xd0000000-0xd1ffffff (ro,non-prefetchable)
I/O Ports: 0xe000-0xefff (rw)
Memory Range: 0xed000000-0xed07ffff (ro,non-prefetchable,disabled)
IRQ: 16 (29 events)
Module Alias: "pci:v000010DEd00001198sv00001043sd0000157Dbc03sc02i00"
Driver Info #0:
Driver Status: nouveau is not active
Driver Activation Cmd: "modprobe nouveau"
Driver Info #1:
Driver Status: nvidia_drm is active
Driver Activation Cmd: "modprobe nvidia_drm"
Driver Info #2:
Driver Status: nvidia is active
Driver Activation Cmd: "modprobe nvidia"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #22 (PCI bridge)
Primary display adapter: #14
.
.
----------------
.
- 7 - xrandr --listproviders
.
----------------
xrandr: Failed to get size of gamma for output default
Providers: number : 0
.
.
There is still a nvidia module in : /lib/modules/4.12.14-lp151.28.20-default/updates/nvidia.ko
In this situation, I would like to have only the intel driver in use.
To get that I have to add the following parameter in the kernel boot parameter :
module_blacklist=nvidia,nvidia-current,nvidia_drm,nvidia_uvm,nvidia_modeset
Any help is welcome.