You are not logged in.

#1 2022-10-21 08:05:18

7000k
Member
Registered: 2022-09-29
Posts: 22

Updating the kernel via pacman fails to re-build dkms drivers.

Recently I was updating my system including kernel 5.19 to 6.0.2. Upon reboot I noticed dkms drivers (mostly nvidia in my case) are not present. I start in text mode and launch X with startx so I could fix this pretty quickly, but I'm reporting it to let people know there are issues with dkms setups that are not just caused by Nvidia's drivers incompatibility.

So why did this happen? It appears the system update didn't install latest linux-headers for the 6.0.2 kernel. When I run pacman to update linux-headers later it downloaded updated package, then dkms did rebuilt the drivers(nvidia) and it was fine from now on. I have to mention I was running a custom kernel when the initial update was run so perhaps there is some logic that decided not to install new kernel headers on this basis.

Or perhaps somewhere linux-headers should be set as a dependency, but it isn't? Anyway I wasn't sure where to log/post this so it goes here.

Offline

#2 2022-10-21 08:46:02

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,104

Re: Updating the kernel via pacman fails to re-build dkms drivers.

If linux was updated but linux-headers wasn't then your mirrors are not syncing properly and you need to appropriately adjust your mirror list to have better ones or you just missed the few seconds/minute window where an actively syncing mirror is slightly out of sync.

https://wiki.archlinux.org/title/Mirror … ng_mirrors

Offline

#3 2022-10-22 07:40:27

7000k
Member
Registered: 2022-09-29
Posts: 22

Re: Updating the kernel via pacman fails to re-build dkms drivers.

V1del wrote:

If linux was updated but linux-headers wasn't then your mirrors are not syncing properly and you need to appropriately adjust your mirror list to have better ones or you just missed the few seconds/minute window where an actively syncing mirror is slightly out of sync.

https://wiki.archlinux.org/title/Mirror … ng_mirrors

OK, so I assumed based on the above linux-headers is a dependency of linux (perhaps further down the chain) and indeed it is. It looks like this Linux - > kmod - > linux-headers (-> = depends on).

So that is fine, but shouldn't pacman detect it failed to download linux-headers (assuming the mirror issue) and hold on the whole transaction?

Offline

#4 2022-10-22 09:45:32

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,104

Re: Updating the kernel via pacman fails to re-build dkms drivers.

No, since the dependency isn't versioned because the "assumption" is that since the same package generates both the headers and the actual kernel and they will generally be uploaded within seconds of each other that this would be an additional thing to think about when updating the PKGBUILD to fix rare corner cases (it would be fairly trivial in this case but there are a few other examples where packages that are generally pushed at the same time don't strictly require on their "sibling").

Last edited by V1del (2022-10-22 10:10:15)

Offline

Board footer

Powered by FluxBB