Current lack of knowledge that I need to track nVidia module version with Linux kernel version.
Wanting to test report on experimental issues early.
Always trying to use the most recent non-rt kernel available through Manjaro Kernels GUI by default, unless something doesn’t work out.
I think we both can agree that, if nVidia modules for linux6 kernel are missing and there is nVidia card which is used for displays, then something somewhere should output this issue into log for the next time. Ideally as TTY text on failed DE boot. Maybe there already is this log ?
With that patch applied, the DKMS modules for kernel 6.0 install without error, and also appear to be functioning.
I am currently writing this text running kernel 6.0.0-1-MANJARO with Nvidia driver 515.65.01.
at first, thanks a lot to the folks who made the Linux kernel 6.0 available in Manjaro Testing.
If you want to test that kernel and have an Nvidia graphics card installed in your machine which uses the proprietary driver 515.65.01, you can do so with the help of Robert Gadson’s solution: http://rglinuxtech.com/?p=3053
In Manjaro, you need the files below, if you are using the DKMS approach to load drivers. Just create them in an empty directory.
Simply curiosity to check if it works
And besides that, the kernels seem to become EOL faster and faster - so I just wanted to take the chance to test the 6.0 kernel before it also becomes EOL
not good with recent changes about conf include headers :
drm_framebuffer will be included in others components outside Nvidia …
this is not nvidia headers …
I am afraid that I do not understand your point.
Adding #include <drm/drm_framebuffer.h> to kernel/nvidia-drm/nvidia-drm-helper.h was proposed by the Nvidia developers themselves, and I am sure they understand what they are doing
Update: As expected, the driver compiles and works flawlessly with #include <drm/drm_framebuffer.h> in kernel/nvidia-drm/nvidia-drm-helper.h as per the following patch:
As for an explanation for those who are interested what is going on:
Per https://github.com/torvalds/linux/commit/720cf96d8fecde29b72e1101f8a567a0ce99594f , #include <drm/drm_framebuffer.h> was removed from <drm/drm_crtc.h> in kernels >= 6.0 because there was no need for that include in <drm/drm_crtc.h> from kernel developer perspective.
Hence, we now have to include it separately in case it is needed (as for our Nvidia driver). Obviously, the best place to add that separate #include <drm/drm_framebuffer.h> is alongside <drm/drm_crtc.h> in kernel/nvidia-drm/nvidia-drm-helper.h.
Is it discouraged to use DKMS with kernels >= 6.0? If yes, can you provide us with some more detail?
At least, DKMS seems to be still supported by kernel 6.0-rc2 and I am able to install and run the patched Nvidia DKMS module on my machine.
nvidia-dkms is part of the nvidia-utils split package. I won’t be patching it for 6.0 since it’s still an early release candidate and could cause problems with other kernels.
I understand your point. However, issues with other kernels are unlikely as that patch only would lead to the drm_framebuffer.h header being included twice for them. In kernels < 6.0, the header is included when using drm_crtc.h.
This was removed in the 6.0 kernels so it has to be included separately if needed.
I just tested with 5.15 and 5.19, and for both, the patched module compiles and installs flawlessly.