As the new kernel 5.16.8 broke nvidia drivers - which is already diskussed and fixed according bug tracking (https://bugzilla.opensuse.org/show_bug.cgi?id=1195885) - I did a lot of things to fix that on my own, that were obviously not the best ideas I had. After that I had a look into the bug tracking - a bit too late. Well…
I bootet with previous kernel 5.16.5 and had the idea, a complete remove and then reinstall of NVidia G06 might help. My thought was, that this would remove and recompile agains any installed kernel. I use yast on text console for that.
But what happend was, that the deinstall removed all *.ko files of nvidia from current loaded kernel 5.16.5 (and maybe of 5.16.8 too, do not know) but yast did the reinstall only for default kernel 5.16.8. After obligatory mkinitrd both kernels were recreated for boot so kernel 5.16.5 had no nvidia drivers included anymore (Heartattack included after X would not come up again!).
I then helped myself by copying all *.ko-files of kernel 5.15.8 to 5.16.5 (from /lib/modules/5.16.8-1-default/updates/ -> /lib/modules/5.16.5-1-default/updates/) and made the kernels recreate via mkinitrd. This works for now, but might not be a stable solution.
The better way would have been to recompile nvidia drivers agains kernel 5.16.5 instead of default kernel 5.16.8. The question now is: how can I do that without using “the hard way” (I would need to deinstall all yast rpms of nvidia first - and I am also not sure, if the installer of nvidia would then be able to compile agains a specific kernel)
I could maybe mess with the links (e.g. /usr/src/linux) and try reinstall again - but I have now Idea if that would help or break everything. I could try to deinstall kernel 5.16.8 - but what mess would that create?
Any help for that is appreciated. I know that the bug that makes me still use 5.16.5 is already fixed and will be available in the repos by today or tomorrow, but I am curious on how that could be done.
Please do not split your computer terminal text within the CODE tags in parts, of which some is outside the CODE tags. Only one CODE section starting with the prompt:command line, then all output end ending with the new prompt is the best you can show. We can then all see what you did and what you got, exactly the same as you see it. Just for the future.
You cannot rebuild anything against kernel. nvidia driver is rebuilt on installation of kernel-default-devel, and yes, the script will use the symlink to the latest installed version:
There is no way to rebuild RPM against specific kernel release. It is designed to automatically provide nvidia modules when you update your kernel and it does not even know in advance the version of new kernel.
What likely may work is force installing specific version of kernel-default-devel. It should change symlink used by nvidia and trigger driver rebuild. But on Tumbleweed previous versions may not be available.
The tip of awerlang to temporary use the history repo was the trick. Here is now what I did: First switch to history repo in /etc/zypp/repos.d/repo-oss.repo so that it looks like this:
I used comment to switch, so easy to remove again.
!Do not forget “zypper ref”! or check version of kernel with yast, if you prefer a UI (will normally do a refresh automatically)
Then:
[FONT=monospace]zypper in -f kernel-default kernel-devel kernel-default-devel
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...
Installation von 'kernel-default-5.16.5-1.4.x86_64' aus Repository 'Tumbleweed OSS' wird erzwungen.
Installation von 'kernel-default-devel-5.16.5-1.4.x86_64' aus Repository 'Tumbleweed OSS' wird erzwungen.
Installation von 'kernel-devel-5.16.5-1.4.noarch' aus Repository 'Tumbleweed OSS' wird erzwungen.
Paketabhängigkeiten werden aufgelöst...
Die folgenden 3 Pakete werden erneut installiert:
kernel-default-5.16.5-1.4 kernel-default-devel-5.16.5-1.4 kernel-devel-5.16.5-1.4
Das folgende Paket erfordert einen Systemneustart:
kernel-default-5.16.5-1.4
3 zu installierende Pakete.
Gesamtgröße des Downloads: 190,0 MiB. Bereits im Cache gespeichert: 0 B. Nach diesem Vorgang wird kein zusätzlicher Speicherplatz belegt oder freigegeben.
Hinweis: Systemneustart erforderlich.
**Fortfahren? [j/n/v/...? zeigt alle Optionen] (j): **j
Let zypper do it’s magic, recompile of NVIDIA for this kernel will be initiated after install of kernel-devel. Will not copy that.
Now, as all defaults are now pointing to 5.16.5, we should force install of current kernel 5.16.8 again to be in the state before forced installation.
To do so first revert the change in repo-oss, than do zypper ref and again the zypper in -f:
**root@quippy**:**~**> cat /etc/zypp/repos.d/repo-oss.repo
[repo-oss]
name=Tumbleweed OSS
enabled=1
autorefresh=1
baseurl=https://download.opensuse.org/tumbleweed/repo/oss
type=rpm-md
keeppackages=0
**root@quippy**:**~**> zypper ref
Repository 'Emulators' ist aktuell.
Repository 'nVidia Graphics Drivers' ist aktuell.
Repository 'Packman' ist aktuell.
Repository 'Tumbleweed Debug' ist aktuell.
Repository 'Tumbleweed Non-OSS' ist aktuell.
Metadaten von Repository 'Tumbleweed OSS' abrufen ....................................................................................................................................................................................................................[fertig]
Cache für Repository 'Tumbleweed OSS' erzeugen .......................................................................................................................................................................................................................[fertig]
Repository 'Tumbleweed update' ist aktuell.
Repository 'Skype (stable)' ist aktuell.
Repository 'MS Teams' ist aktuell.
Alle Repositorys wurden aktualisiert.
**root@quippy**:**~**> zypper in -f kernel-default kernel-devel kernel-default-devel
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...
Installation von 'kernel-default-5.16.8-1.1.x86_64' aus Repository 'Tumbleweed OSS' wird erzwungen.
Installation von 'kernel-default-devel-5.16.8-1.1.x86_64' aus Repository 'Tumbleweed OSS' wird erzwungen.
Installation von 'kernel-devel-5.16.8-1.1.noarch' aus Repository 'Tumbleweed OSS' wird erzwungen.
Paketabhängigkeiten werden aufgelöst...
Die folgenden 3 Pakete werden erneut installiert:
kernel-default-5.16.8-1.1 kernel-default-devel-5.16.8-1.1 kernel-devel-5.16.8-1.1
Das folgende Paket erfordert einen Systemneustart:
kernel-default-5.16.8-1.1
3 zu installierende Pakete.
Gesamtgröße des Downloads: 189,7 MiB. Bereits im Cache gespeichert: 0 B. Nach diesem Vorgang wird kein zusätzlicher Speicherplatz belegt oder freigegeben.
Hinweis: Systemneustart erforderlich.
**Fortfahren? [j/n/v/...? zeigt alle Optionen] (j):**
Hit “yes” (J in this case) and you should be good to go. I hope this time the quoting is OK and not too much.
Thanks for the help - and may this help others with the same problem.
Just for the records: the generated files in /lib/modules/5.16.*/updates do not differ in size - but the content indeed does differ (checked with cmp)
[/FONT]
The LANG=C environment variable influences the lanugage of the messages shown. It does not have any influence on what is done. It works for many programs.