Issues with switching kernel to linux-tkg-pds-skylake

Hi all,
I am using the "stock" kernel with my Garuda Linux Cinnamon edition (linux-tkg-bmq)
The kernel I want to switch to is the tkg-pds-skylake kernel. While it seemingly installs just fine, when I reboot I get a black screen. The issue is seemingly related to my nvidia driver as I have a GTX 2060 and I am using the official nvidia drivers (460.32.03).
I switched back to the previous kernel and checked the Garuda Settings Manager details when applying the new kernel and here is the output:
https://bin.garudalinux.org/?f3b2734555b46682#BZKXgEnCBQ6CYJ6GfidvgCn7WHvRE69dZvtxvQ7kWwtb

The part that is relevant (I think) is this section:

[...]
Optional dependencies for linux-tkg-pds-skylake-headers
    schedtool [installed]
:: Running post-transaction hooks...
( 1/11) Arming ConditionNeedsUpdate...
( 2/11) Updating module dependencies...
( 3/11) Install DKMS modules
==> dkms install --no-depmod -m vmware-workstation -v 16.1.0_17198959 -k 5.10.7-111-tkg-pds
Error! Bad return status for module build on kernel: 5.10.7-111-tkg-pds (x86_64)
Consult /var/lib/dkms/vmware-workstation/16.1.0_17198959/build/make.log for more information.
==> Warning, `dkms install --no-depmod -m vmware-workstation -v 16.1.0_17198959 -k 5.10.7-111-tkg-pds' returned 10
==> dkms install --no-depmod -m vboxhost -v 6.1.16_OSE -k 5.10.7-111-tkg-pds
Error! Bad return status for module build on kernel: 5.10.7-111-tkg-pds (x86_64)
Consult /var/lib/dkms/vboxhost/6.1.16_OSE/build/make.log for more information.
==> Warning, `dkms install --no-depmod -m vboxhost -v 6.1.16_OSE -k 5.10.7-111-tkg-pds' returned 10
**==> dkms install --no-depmod -m nvidia -v 460.32.03 -k 5.10.7-111-tkg-pds**
**Error! Bad return status for module build on kernel: 5.10.7-111-tkg-pds (x86_64)**
**Consult /var/lib/dkms/nvidia/460.32.03/build/make.log for more information**.
==> Warning, `dkms install --no-depmod -m nvidia -v 460.32.03 -k 5.10.7-111-tkg-pds' returned 10
==> depmod 5.10.7-111-tkg-pds
[...]

While I can see that nvidia isn't the only affected module, I focused on the path referenced and checked the make.log:

DKMS make.log for nvidia-460.32.03 for kernel 5.10.7-111-tkg-pds (x86_64)

*Mon Jan 25 11:30:46 GMT 2021*

*make[1]: Entering directory '/usr/lib/modules/5.10.7-111-tkg-pds/build'*
*make[1]: cc: No such file or directory*
*make[1]: make: No such file or directory*
*make[1]: *** [Makefile:1805: /var/lib/dkms/nvidia/460.32.03/build] Error 127*
*make[1]: Leaving directory '/usr/lib/modules/5.10.7-111-tkg-pds/build'*
*make: *** [Makefile:80: modules] Error 2*

The error makes sense as the path "/usr/lib/modules/5.10.7-111-tkg-pds/" does not exist.

Here are my current system specs:
https://bin.garudalinux.org/?e8ec06331c7a4c11#DQvwujufymLevfzfW5LPHpnL258V7rVipB7i3xFLyHnS

My current ask is, can someone help me fix this? Thanks in advance :smiley:

Welcome to the Forum! :slight_smile:

Although what I'm gonna say will not help "fixing" this exact issue, it may help understanding it better.

Are you able to try another kernel? Any other, or another version as close as possible as skylake?

My idea here is to ensure that you can move to another kernel without issue and just this one is causing the issue... or maybe they are all causing the issue. That's the point I'm trying to make. :slight_smile:

1 Like

Let me try another kernel and get back to you. Thanks.

Ok, so this time I tried installing the linux-tkg-bmq-skylake kernel and it failed with the exact same error:

DKMS make.log for nvidia-460.32.03 for kernel 5.10.7-111-tkg-bmq (x86_64)

Mon Jan 25 17:05:54 GMT 2021

make[1]: Entering directory '/usr/lib/modules/5.10.7-111-tkg-bmq/build'
make[1]: cc: No such file or directory
make[1]: make: No such file or directory
make[1]: *** [Makefile:1805: /var/lib/dkms/nvidia/460.32.03/build] Error 127
make[1]: Leaving directory '/usr/lib/modules/5.10.7-111-tkg-bmq/build'
make: *** [Makefile:80: modules] Error 2

I then decided to check what dkms is looking for and ran "dkms status" and the output is as follows:

nvidia, 460.32.03, 5.10.8-112-tkg-bmq, x86_64: installed
vboxhost, 6.1.16_OSE, 5.10.8-112-tkg-bmq, x86_64: installed
vmware-workstation, 16.1.0_17198959, 5.10.8-112-tkg-bmq, x86_64: installed

I also checked the location "/usr/lib/modules/5.10.7-111-tkg-bmq/build" and while it does exist I am not sure what dkms is looking for.
My theory is that it involves the actual makefile but I have no idea what I am looking for in this case. Any thoughts or ideas would be appreciated. Thanks again.

As a bonus I tried the Linux-Zen kernel and I get the same error there:

DKMS make.log for nvidia-460.32.03 for kernel 5.10.8-zen1-1-zen (x86_64)

Mon Jan 25 17:20:13 GMT 2021
make[1]: Entering directory '/usr/lib/modules/5.10.8-zen1-1-zen/build'
make[1]: cc: No such file or directory
make[1]: make: No such file or directory
make[1]: *** [Makefile:1805: /var/lib/dkms/nvidia/460.32.03/build] Error 127
make[1]: Leaving directory '/usr/lib/modules/5.10.8-zen1-1-zen/build'
make: *** [Makefile:80: modules] Error 2

Unfortunate but there it is. :man_shrugging:
Cheers.

Ok thanks for those 2 tests!

This really confirms it has nothing to do with the chosen kernel but something else is causing this.
I hope these additional info will guide the kernel gurus here for the next steps to look at.

It’s telling you that you are missing cc and make: compilation tools.

Install base-devel and try again.

2 Likes

Having the same issue even with base-devel installed:

DKMS make.log for nvidia-460.32.03 for kernel 5.10.7-111-tkg-pds (x86_64)
Mon Jan 25 16:18:17 -03 2021
make[1]: Entering directory '/usr/lib/modules/5.10.7-111-tkg-pds/build'
make[1]: cc: No such file or directory
make[1]: make: No such file or directory
make[1]: *** [Makefile:1805: /var/lib/dkms/nvidia/460.32.03/build] Error 127
make[1]: Leaving directory '/usr/lib/modules/5.10.7-111-tkg-pds/build'
make: *** [Makefile:80: modules] Error 2

Run in a terminal, paste output as text:

which cc
which make

This seems old… 5.10.10 is current (2021-01-25T00:00:00Z). Is the system updated?

Pretty much, yeah. What I get in the Kernel KCM is 5.10.6 - 5.10.7 for tkg kernels with some in 5.10.8 and 5.10.10 for the regular linux and zen kernels.

Here it is:

> which cc
/usr/bin/cc
> which make
/usr/bin/make
1 Like

Hmm... I wonder what's going on in the tkg-pds dkms.conf file... overriding $PATH or something stupid?

1 Like

Apologies for my late reply.
I did check earlier if make and cc where in the $PATH and they were:

/usr/bin/make
/usr/bin/cc

The dkms.conf for nvidia is as follows:

> PACKAGE_NAME="nvidia"
> PACKAGE_VERSION="460.32.03"
> AUTOINSTALL="yes"
> 
> # By default, DKMS will add KERNELRELEASE to the make command line; however,
> # this will cause the kernel module build to infer that it was invoked via
> # Kbuild directly instead of DKMS. The dkms(8) manual page recommends quoting
> # the 'make' command name to suppress this behavior.
> MAKE[0]="'make' -j`nproc` IGNORE_PREEMPT_RT_PRESENCE=1 NV_EXCLUDE_BUILD_MODULES='__EXCLUDE_MODULES' KERNEL_UNAME=${kernelver} IGNORE_CC_MISMATCH='__IGNORE_CC_MISMATCH' modules"
> 
> # The list of kernel modules will be generated by nvidia-installer at runtime.
> BUILT_MODULE_NAME[0]="nvidia"
> DEST_MODULE_LOCATION[0]="/kernel/drivers/video"
> BUILT_MODULE_NAME[1]="nvidia-uvm"
> DEST_MODULE_LOCATION[1]="/kernel/drivers/video"
> BUILT_MODULE_NAME[2]="nvidia-modeset"
> DEST_MODULE_LOCATION[2]="/kernel/drivers/video"
> BUILT_MODULE_NAME[3]="nvidia-drm"
> DEST_MODULE_LOCATION[3]="/kernel/drivers/video"

I don't have the dkms.conf for the tkg-pds. Where can I find this, then I can post it here. Thanks.

2 Likes

Oh, wait - I think the tkg kernels need their own patched NVIDIA driver packages?

1 Like

I had the same issue with tkg-pds-nehalem.
So if you change kernel:

  1. Install the kernel from Garuda Settings Manager
  2. Check your kernel headers you have with

pacman -Q | grep headers

  1. After Install the kernel headers:

sudo pacman - S linux-tkg-pds-skylake-headers

  1. dkms now will be triggered and install your driver automatically
8 Likes

Let me try this and update the thread accordingly. Thanks for the info.

Installing both the kernel and headers from pamac worked perfectly, so the problem seems to be with the kernel KCM then?

Well spotted.

Normally, the DKMS log would say that the headers are missing… :confused:

Ok, I am back and this worked completely.
As per uname , I am rocking the PDS kernel:

Linux samara 5.10.7-111-tkg-pds #1 TKG SMP PREEMPT Sun, 17 Jan 2021 10:27:54 +0000 x86_64 GNU/Linux

Many thanks for the help.

2 Likes

You're a Gent. :ok_hand:

2 Likes