Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When I select only Integrated, at boot I will get a message "Missing NVIDIA kernel module, defaulting to Nouveau" #121

Closed
logicito opened this issue Jul 22, 2023 · 16 comments
Labels
bug Something isn't working

Comments

@logicito
Copy link

Describe the bug
Brand new Fedora 38 installation, using the NVIDIA drivers from Gnome Software (RPM), configured to ONLY Integrated iGPU Intel, and at boot I get the message: "Missing NVIDIA kernel module, defaulting to Nouveau"

To Reproduce
Install NVIDIA driver from Fedora RPM via Gnome Software
Using EnvyControl set it only for Integrated
Boot

Expected behavior
No error message at Boot

Screenshots
If applicable, add screenshots to help explain your problem.

System Information:

  • Model: Dell XPS 15 9520
  • Distro: Fedora 38 Workstation
  • Kernel: 6.3.12-200
  • DE/WM and Display Manager (if applicable): Gnome 44.3
  • EnvyControl version: 3.2.0
  • Nvidia driver version: 535.54.03
  • lspci output:
00:00.0 Host bridge: Intel Corporation 12th Gen Core Processor Host Bridge/DRAM Registers (rev 02)
00:01.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x16 Controller #1 (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
00:04.0 Signal processing controller: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant (rev 02)
00:06.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 (rev 02)
00:06.2 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #2 (rev 02)
00:07.0 PCI bridge: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #0 (rev 02)
00:07.1 PCI bridge: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #1 (rev 02)
00:08.0 System peripheral: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator (rev 02)
00:0d.0 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller (rev 02)
00:0d.2 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #0 (rev 02)
00:12.0 Serial controller: Intel Corporation Alder Lake-P Integrated Sensor Hub (rev 01)
00:14.0 USB controller: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller (rev 01)
00:14.2 RAM memory: Intel Corporation Alder Lake PCH Shared SRAM (rev 01)
00:14.3 Network controller: Intel Corporation Alder Lake-P PCH CNVi WiFi (rev 01)
00:15.0 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 (rev 01)
00:15.1 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #1 (rev 01)
00:16.0 Communication controller: Intel Corporation Alder Lake PCH HECI Controller (rev 01)
00:1c.0 PCI bridge: Intel Corporation Device 51bb (rev 01)
00:1f.0 ISA bridge: Intel Corporation Alder Lake PCH eSPI Controller (rev 01)
00:1f.3 Audio device: Intel Corporation Alder Lake PCH-P High Definition Audio Controller (rev 01)
00:1f.4 SMBus: Intel Corporation Alder Lake PCH-P SMBus Host Controller (rev 01)
00:1f.5 Serial bus controller: Intel Corporation Alder Lake-P PCH SPI Controller (rev 01)
01:00.0 3D controller: NVIDIA Corporation GA107M [GeForce RTX 3050 Ti Mobile] (rev a1)
02:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd Device a80c
03:00.0 Non-Volatile memory controller: Micron/Crucial Technology P5 Plus NVMe PCIe SSD
a6:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5260 PCI Express Card Reader (rev 01)

Additional context
Add any other context about the problem here. If possible try to reproduce the problem with --verbose flag and attach its output.

paste here
@logicito logicito added the bug Something isn't working label Jul 22, 2023
@logicito
Copy link
Author

Update: I have tried with multiple fresh installations, always at boot it will show the message of missing NVIDIA kernel module, the only way to get rid of it, is to switch from Integrated to Hybrid, the default mode, that is counter productive, because is the same as not having EnvyControl installed. If you need more information, please let me know, thank you

@bayasdev
Copy link
Owner

It's a known problem with the RPM Fusion Nvidia driver, I think we need to add/modify some Fedora/RHEL specific boot params in addition to blacklisting the kernel modules via modprobe but haven't really looked into it.

In the meanwhile, it's safe to ignore it.

@Boria138
Copy link
Contributor

Update: I have tried with multiple fresh installations, always at boot it will show the message of missing NVIDIA kernel module, the only way to get rid of it, is to switch from Integrated to Hybrid, the default mode, that is counter productive, because is the same as not having EnvyControl installed. If you need more information, please let me know, thank you

Disable the nvidia-fallback.service and this warning will no longer occur

@Boria138
Copy link
Contributor

@logicito Write sudo systemctl --type=service | grep "nvidia-fallback" output please

Boria138 added a commit to Boria138/envycontrol that referenced this issue Sep 20, 2023
@klmcwhirter
Copy link
Contributor

klmcwhirter commented Mar 2, 2024

@Boria138 This is what I see:

sudo systemctl --type=service | grep "nvidia-fallback"
  nvidia-fallback.service                               loaded active exited  Fallback to nouveau as nvidia did not load

I disabled and stopped the service but that did not seem to have effect. After reboot it is active again. And I still saw the message.

sudo systemctl status nvidia-fallback.service 
● nvidia-fallback.service - Fallback to nouveau as nvidia did not load
     Loaded: loaded (/usr/lib/systemd/system/nvidia-fallback.service; disabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf
     Active: active (exited) since Fri 2024-03-01 17:53:10 PST; 1min 45s ago
    Process: 1309 ExecStart=/sbin/modprobe nouveau (code=exited, status=1/FAILURE)
    Process: 1316 ExecStartPost=/bin/plymouth message --text=NVIDIA kernel module missing. Falling back to nouveau (code=exited, status=0/SUCCESS)
   Main PID: 1309 (code=exited, status=1/FAILURE)
        CPU: 5ms

Mar 01 17:53:10 fedora systemd[1]: Starting nvidia-fallback.service - Fallback to nouveau as nvidia did not load...
Mar 01 17:53:10 fedora modprobe[1309]: modprobe: ERROR: libkmod/libkmod-module.c:895 kmod_module_insert_module() could not find module by name='off'
Mar 01 17:53:10 fedora modprobe[1309]: modprobe: ERROR: could not insert 'off': Unknown symbol in module, or unknown parameter (see dmesg)
Mar 01 17:53:10 fedora systemd[1]: Finished nvidia-fallback.service - Fallback to nouveau as nvidia did not load.

But note this:

$ lsmod | grep nouveau
$ lsmod | grep nvidia
nvidia_wmi_ec_backlight    12288  0
video                  77824  3 nvidia_wmi_ec_backlight,acer_wmi,i915
wmi                    45056  4 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof

$ lsmod | grep video
uvcvideo              176128  0
uvc                    12288  1 uvcvideo
videobuf2_vmalloc      20480  1 uvcvideo
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         40960  1 uvcvideo
videobuf2_common       94208  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videodev              393216  5 v4l2_async,v4l2_fwnode,videobuf2_v4l2,ov13858,uvcvideo
mc                     90112  6 v4l2_async,videodev,videobuf2_v4l2,ov13858,uvcvideo,videobuf2_common
video                  77824  3 nvidia_wmi_ec_backlight,acer_wmi,i915
wmi                    45056  4 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof

Note on my other HD with the same exact system but without akmod-nvidia installed, I do not see that message. Must be built into the driver.

Just double-checked the lsmod output above from both systems are identical.

Observations:

  • no nouveau loaded
  • using i915 driver in integrated mode with or without akmod-nvidia rpmfusion driver installed.

I do not believe your change is needed.

As a final test, on the system without akmod-nvidia installed, I executed envycontrol --reset and rebooted. This is now the lsmod output.

$ lsmod | grep nouveau
nouveau              3641344  0
drm_gpuvm              28672  1 nouveau
mxm_wmi                12288  1 nouveau
drm_exec               12288  1 nouveau
gpu_sched              65536  1 nouveau
drm_ttm_helper         12288  1 nouveau
i2c_algo_bit           20480  2 i915,nouveau
ttm                   110592  3 drm_ttm_helper,i915,nouveau
drm_display_helper    229376  2 i915,nouveau
video                  77824  4 nvidia_wmi_ec_backlight,acer_wmi,i915,nouveau
wmi                    45056  6 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof,mxm_wmi,nouveau

$ lsmod | grep nvidia
nvidia_wmi_ec_backlight    12288  0
video                  77824  4 nvidia_wmi_ec_backlight,acer_wmi,i915,nouveau
wmi                    45056  6 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof,mxm_wmi,nouveau

$ lsmod | grep video
uvcvideo              176128  0
uvc                    12288  1 uvcvideo
videobuf2_vmalloc      20480  1 uvcvideo
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         40960  1 uvcvideo
videobuf2_common       94208  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videodev              393216  5 v4l2_async,v4l2_fwnode,videobuf2_v4l2,ov13858,uvcvideo
mc                     90112  6 v4l2_async,videodev,videobuf2_v4l2,ov13858,uvcvideo,videobuf2_common
video                  77824  4 nvidia_wmi_ec_backlight,acer_wmi,i915,nouveau
wmi                    45056  6 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof,mxm_wmi,nouveau

@Boria138
Copy link
Contributor

Boria138 commented Mar 7, 2024

@Boria138 This is what I see:

sudo systemctl --type=service | grep "nvidia-fallback"
  nvidia-fallback.service                               loaded active exited  Fallback to nouveau as nvidia did not load

I disabled and stopped the service but that did not seem to have effect. After reboot it is active again. And I still saw the message.

sudo systemctl status nvidia-fallback.service 
● nvidia-fallback.service - Fallback to nouveau as nvidia did not load
     Loaded: loaded (/usr/lib/systemd/system/nvidia-fallback.service; disabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf
     Active: active (exited) since Fri 2024-03-01 17:53:10 PST; 1min 45s ago
    Process: 1309 ExecStart=/sbin/modprobe nouveau (code=exited, status=1/FAILURE)
    Process: 1316 ExecStartPost=/bin/plymouth message --text=NVIDIA kernel module missing. Falling back to nouveau (code=exited, status=0/SUCCESS)
   Main PID: 1309 (code=exited, status=1/FAILURE)
        CPU: 5ms

Mar 01 17:53:10 fedora systemd[1]: Starting nvidia-fallback.service - Fallback to nouveau as nvidia did not load...
Mar 01 17:53:10 fedora modprobe[1309]: modprobe: ERROR: libkmod/libkmod-module.c:895 kmod_module_insert_module() could not find module by name='off'
Mar 01 17:53:10 fedora modprobe[1309]: modprobe: ERROR: could not insert 'off': Unknown symbol in module, or unknown parameter (see dmesg)
Mar 01 17:53:10 fedora systemd[1]: Finished nvidia-fallback.service - Fallback to nouveau as nvidia did not load.

But note this:

$ lsmod | grep nouveau
$ lsmod | grep nvidia
nvidia_wmi_ec_backlight    12288  0
video                  77824  3 nvidia_wmi_ec_backlight,acer_wmi,i915
wmi                    45056  4 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof

$ lsmod | grep video
uvcvideo              176128  0
uvc                    12288  1 uvcvideo
videobuf2_vmalloc      20480  1 uvcvideo
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         40960  1 uvcvideo
videobuf2_common       94208  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videodev              393216  5 v4l2_async,v4l2_fwnode,videobuf2_v4l2,ov13858,uvcvideo
mc                     90112  6 v4l2_async,videodev,videobuf2_v4l2,ov13858,uvcvideo,videobuf2_common
video                  77824  3 nvidia_wmi_ec_backlight,acer_wmi,i915
wmi                    45056  4 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof

Note on my other HD with the same exact system but without akmod-nvidia installed, I do not see that message. Must be built into the driver.

Just double-checked the lsmod output above from both systems are identical.

Observations:

* no nouveau loaded

* using i915 driver in integrated mode with or without akmod-nvidia rpmfusion driver installed.

I do not believe your change is needed.

As a final test, on the system without akmod-nvidia installed, I executed envycontrol --reset and rebooted. This is now the lsmod output.

$ lsmod | grep nouveau
nouveau              3641344  0
drm_gpuvm              28672  1 nouveau
mxm_wmi                12288  1 nouveau
drm_exec               12288  1 nouveau
gpu_sched              65536  1 nouveau
drm_ttm_helper         12288  1 nouveau
i2c_algo_bit           20480  2 i915,nouveau
ttm                   110592  3 drm_ttm_helper,i915,nouveau
drm_display_helper    229376  2 i915,nouveau
video                  77824  4 nvidia_wmi_ec_backlight,acer_wmi,i915,nouveau
wmi                    45056  6 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof,mxm_wmi,nouveau

$ lsmod | grep nvidia
nvidia_wmi_ec_backlight    12288  0
video                  77824  4 nvidia_wmi_ec_backlight,acer_wmi,i915,nouveau
wmi                    45056  6 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof,mxm_wmi,nouveau

$ lsmod | grep video
uvcvideo              176128  0
uvc                    12288  1 uvcvideo
videobuf2_vmalloc      20480  1 uvcvideo
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         40960  1 uvcvideo
videobuf2_common       94208  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videodev              393216  5 v4l2_async,v4l2_fwnode,videobuf2_v4l2,ov13858,uvcvideo
mc                     90112  6 v4l2_async,videodev,videobuf2_v4l2,ov13858,uvcvideo,videobuf2_common
video                  77824  4 nvidia_wmi_ec_backlight,acer_wmi,i915,nouveau
wmi                    45056  6 video,nvidia_wmi_ec_backlight,acer_wmi,wmi_bmof,mxm_wmi,nouveau

All the nvidia-fallback service does is to try to start nouveau via modprobe and display messages in plymouth, the changes are only cosmetic, it doesn't affect functionality, but I still think you should disable this service so people don't get confused, probably the best option is to mention this rule in the readme because I think even if you mask the service udev will still call it.

@Boria138
Copy link
Contributor

Boria138 commented Mar 7, 2024

I just checked it looks like if you mask the service then udev rule doesn't work and plymouth doesn't write anything, @klmcwhirter please check with yourself if this works and if it does I will update pr

@klmcwhirter
Copy link
Contributor

klmcwhirter commented Mar 7, 2024 via email

@Boria138
Copy link
Contributor

Boria138 commented Mar 7, 2024

I have moved on to a different approach that seems to be working better for me. Please work with Victor.

On Thursday, March 7, 2024 at 12:18:46 AM PST, Boria138 ***@***.***> wrote:  

I just checked it looks like if you mask the service then udev rule doesn't work and plymouth doesn't write anything, @klmcwhirter please check with yourself if this works and if it does I will update pr


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

What different approach ?

@bayasdev
Copy link
Owner

bayasdev commented Mar 7, 2024

I have moved on to a different approach that seems to be working better for me. Please work with Victor.

On Thursday, March 7, 2024 at 12:18:46 AM PST, Boria138 ***@***.***> wrote:  

I just checked it looks like if you mask the service then udev rule doesn't work and plymouth doesn't write anything, @klmcwhirter please check with yourself if this works and if it does I will update pr


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

What different approach ?

@klmcwhirter is talking about this

https://github.com/klmcwhirter/nvidia-more-battery

@klmcwhirter
Copy link
Contributor

klmcwhirter commented Mar 7, 2024 via email

@logicito
Copy link
Author

logicito commented Mar 7, 2024

I thought that almost after a year, this issue would have been resolved, tested it today, and the exact same problem

@bayasdev
Copy link
Owner

bayasdev commented Mar 7, 2024

I thought that almost after a year, this issue would have been resolved, tested it today, and the exact same problem

The missing modules is a Fedora issue, it shouldn't try to load again and again once we're blacklisting them

@klmcwhirter
Copy link
Contributor

@bayasdev , actually I am pretty certain it is an intentional design element by the rpmfusion folks - NOT fedora.

The nvidia-fallback.service (that issues that warning) is started from inside of the kernel driver code somewhere. And it is right! During the transition to integrated mode we (envycontrol) just blacklisted all those modules.

So to me, the service is just stating the obvious; the surprise is the choice to (at least temporarily) fallback to nouveau.

As you mentioned, it is completely harmless and can safely be ignored. My analysis of loaded modules across a matrix of scenarios shows that. I am referencing this comment: #121 (comment)

Personally I think this knowledge should be captured in the FAQ and this issue closed. But that is just my opinion.

I'll let you work that out with @Boria138 .

@Boria138
Copy link
Contributor

Boria138 commented Mar 9, 2024

@bayasdev I guess this error can be closed, as it is not really an error at all

@bayasdev bayasdev closed this as not planned Won't fix, can't repro, duplicate, stale Mar 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants