Problem with kernel 6.15.3-1-siduction-amd64

Started by charlyheinz, 2025/06/20, 13:27:38

Previous topic - Next topic

charlyheinz

Zur Info.

Ein DU heute Morgen schlug mit folgender Fehlermeldung fehl:

Quote
/etc/kernel/postinst.d/dkms exited with return code 1
dpkg: Fehler beim Bearbeiten des Paketes linux-image-6.15.3-1-siduction-amd64 (--configure):
»installiertes post-installation-Skript des Paketes linux-image-6.15.3-1-siduction-amd64«-Unterprozess gab den Fehlerwert 1 zurück
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von linux-image-siduction-amd64:
linux-image-siduction-amd64 hängt ab von linux-image-6.15.3-1-siduction-amd64 (= 6.15-3); aber:
  Paket linux-image-6.15.3-1-siduction-amd64 ist noch nicht konfiguriert.

Es liegt wohl mal wieder am Nvidia- Paket?! Die Fixes- Quellen sind aktiviert gewesen.
Der Kernel 6.14.10-1-siduction-amd64 läuft aber noch.


dibl

System76 Oryx Pro, Intel Core i7-11800H, ASRock B860 Pro-A, Intel Core Ultra 7 265KF, Nvidia GTX-1060, SSD 990 EVO Plus.

towo

Ein gepatchter Nvidia-Treiber liegt seit eben im fixes-Repo.
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

McBane

Quote from: towo on 2025/06/20, 13:33:06
Ein gepatchter Nvidia-Treiber liegt seit eben im fixes-Repo.
Works like a charm! Thanks, towo!

charlyheinz

jupp- wieder alles auf Reihe. @towo- aller besten Dank und ein schönes Sommer-WE.

michaa7

#5
Hi towo,

es scheint dass der Fix nicht für nvidia-470 taugt, oder es ist ein anderer Fehler:

Der relevante Teil beim Bau des Moduls:
QuoteAutoinstall of module nvidia-tesla-470/470.256.02 for kernel 6.15.3-1-siduction-amd64 (x86_64)
Applying patch cc_version_check-gcc5.patch... done.
Applying patch bashisms.patch... done.
Applying patch 0001-some-power-management-features-were-not-yet-in-Linux.patch... done.
Applying patch 0033-refuse-to-load-legacy-module-if-IBT-is-enabled.patch... done.
Applying patch 0034-fix-typos.patch... done.
Applying patch 0037-import-pfn_valid-w-o-GPL-rcu_read_lock-unlock-from-v.patch... done.
Applying patch 0042-Log-an-error-message-when-nv_mem_client_init-fails-d.patch... done.
Applying patch 0043-backport-follow_pfn-changes-from-550.90.07.patch... done.
Applying patch 0045-let-the-virt_addr_valid-macro-use-nv_pfn_valid-on-pp.patch... done.
Applying patch 0046-virt_addr_valid-wants-a-void-argument.patch... done.
Applying patch kernel-6.12.patch... done.
Applying patch kernel-6.13.patch... done.
Applying patch nvidia-470xx-fix-linux-6.14.patch... done.
Applying patch fragile-ARCH.patch... done.
Applying patch conftest-verbose.patch... done.
Applying patch use-kbuild-compiler.patch... done.
Applying patch use-kbuild-flags.patch... done.
Applying patch conftest-prefer-arch-headers.patch... done.
Building module(s).............(bad exit status: 2)
Failed command:
env NV_VERBOSE=1 make -j4 modules KERNEL_UNAME=6.15.3-1-siduction-amd64

Error! Bad return status for module build on kernel: 6.15.3-1-siduction-amd64 (x86_64)
Consult /var/lib/dkms/nvidia-tesla-470/470.256.02/build/make.log for more information.

Autoinstall on 6.15.3-1-siduction-amd64 failed for module(s) nvidia-tesla-470(10).

Error! One or more modules failed to install during autoinstall.
Refer to previous errors for more information.
run-parts: /etc/kernel/postinst.d/dkms exited with return code 1
dpkg: Fehler beim Bearbeiten des Paketes linux-image-6.15.3-1-siduction-amd64 (--configure):
»installiertes post-installation-Skript des Paketes linux-image-6.15.3-1-siduction-amd64«-Unterprozess gab den Fehlerwert 1 zurück
libqt6dbus6:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
libqt6concurrent6:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
libglx-mesa0:amd64 (25.1.4-0siduction1) wird eingerichtet ...
libglx-mesa0:i386 (25.1.4-0siduction1) wird eingerichtet ...
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von linux-image-siduction-amd64:
linux-image-siduction-amd64 hängt ab von linux-image-6.15.3-1-siduction-amd64 (= 6.15-3); aber:
  Paket linux-image-6.15.3-1-siduction-amd64 ist noch nicht konfiguriert.

dpkg: Fehler beim Bearbeiten des Paketes linux-image-siduction-amd64 (--configure):
Abhängigkeitsprobleme - verbleibt unkonfiguriert
libqt6gui6:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
qt6-gtk-platformtheme:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
libqt6network6:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
bind9-dnsutils (1:9.20.10-1) wird eingerichtet ...
qt6-qpa-plugins:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
libqt6opengl6:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
libqt6widgets6:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
libqt6openglwidgets6:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
libqt6printsupport6:amd64 (6.8.2+dfsg-7) wird eingerichtet ...
Trigger für hicolor-icon-theme (0.18-2) werden verarbeitet ...
Trigger für libc-bin (2.41-9) werden verarbeitet ...
Trigger für glx-alternative-mesa (1.2.2) werden verarbeitet ...
Trigger für man-db (2.13.1-1) werden verarbeitet ...
Trigger für siduction-dynamic-dms (2021.3.0-1) werden verarbeitet ...
Trigger für menu (2.1.51) werden verarbeitet ...
Trigger für mailcap (3.74) werden verarbeitet ...
Trigger für desktop-file-utils (0.28-1) werden verarbeitet ...
Trigger für libc-bin (2.41-9) werden verarbeitet ...
Fehler traten auf beim Bearbeiten von:
linux-headers-6.15.3-1-siduction-amd64
linux-headers-siduction-amd64
linux-image-6.15.3-1-siduction-amd64
linux-image-siduction-amd64
needrestart is being skipped since dpkg has failed
Fehler: Sub-process /usr/bin/dpkg returned an error code (1)

Auszug aus dem Log folgt gleich (*ab Block oberhalb des ersten Fehlers*):


---Snip----

# CC [M]  nvidia/nv-cray.o
  gcc -Wp,-MMD,nvidia/.nv-cray.o.d -nostdinc -I/usr/src/linux-headers-6.15.3-1-siduction-amd64/arch/x86/include -I/usr/src/linux-headers-6.15.3-1-siduction-amd64/arch/x86/include/generated -I/usr/src/linux-headers-6.15.3-1-siduction-amd64/include -I/usr/src/linux-headers-6.15.3-1-siduction-amd64/include -I/usr/src/linux-headers-6.15.3-1-siduction-amd64/arch/x86/include/uapi -I/usr/src/linux-headers-6.15.3-1-siduction-amd64/arch/x86/include/generated/uapi -I/usr/src/linux-headers-6.15.3-1-siduction-amd64/include/uapi -I/usr/src/linux-headers-6.15.3-1-siduction-amd64/include/generated/uapi -include /usr/src/linux-headers-6.15.3-1-siduction-amd64/include/linux/compiler-version.h -include /usr/src/linux-headers-6.15.3-1-siduction-amd64/include/linux/kconfig.h -include /usr/src/linux-headers-6.15.3-1-siduction-amd64/include/linux/compiler_types.h -D__KERNEL__ -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -march=x86-64 -mtune=generic -mno-red-zone -mcmodel=kernel -mstack-protector-guard-reg=gs -mstack-protector-guard-symbol=__ref_stack_chk_guard -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -fomit-frame-pointer -fno-stack-clash-protection -fmin-function-alignment=16 -fstrict-flex-arrays=3 -fno-strict-overflow -fno-stack-check -fconserve-stack -fno-builtin-wcslen -Wall -Wextra -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=2048 -Wno-main -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-array-bounds -Wno-stringop-overflow -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wunused -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-override-init -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -Wno-unused-parameter -I././nvidia -DNVIDIA_UNDEF_LEGACY_BIT_MACROS -UDEBUG -U_DEBUG -DNDEBUG  -DMODULE  -DKBUILD_BASENAME='"nv_cray"' -DKBUILD_MODNAME='"nvidia"' -D__KBUILD_MODNAME=kmod_nvidia -c -o nvidia/nv-cray.o nvidia/nv-cray.c   ; /usr/src/linux-headers-6.15.3-1-siduction-amd64/tools/objtool/objtool --hacks=jump_label --hacks=noinstr --hacks=skylake --orc --retpoline --rethunk --sls --static-call --uaccess --prefix=16   --module nvidia/nv-cray.o
nvidia/nv.c:11:10: fatal error: nvmisc.h: Datei oder Verzeichnis nicht gefunden
   11 | #include "nvmisc.h"
      |          ^~~~~~~~~~
compilation terminated.
make[4]: *** [/usr/src/linux-headers-6.15.3-1-siduction-amd64/scripts/Makefile.build:208: nvidia/nv.o] Fehler 1
make[4]: *** Es wird auf noch nicht beendete Prozesse gewartet ...
nvidia/nv-acpi.c:13:10: fatal error: os-interface.h: Datei oder Verzeichnis nicht gefunden
   13 | #include "os-interface.h"
      |          ^~~~~~~~~~~~~~~~
compilation terminated.
make[4]: *** [/usr/src/linux-headers-6.15.3-1-siduction-amd64/scripts/Makefile.build:208: nvidia/nv-acpi.o] Fehler 1
nvidia/nv-cray.c:13:10: fatal error: os-interface.h: Datei oder Verzeichnis nicht gefunden
   13 | #include "os-interface.h"
      |          ^~~~~~~~~~~~~~~~
compilation terminated.
make[4]: *** [/usr/src/linux-headers-6.15.3-1-siduction-amd64/scripts/Makefile.build:208: nvidia/nv-cray.o] Fehler 1
nvidia/nv-pci.c:12:10: fatal error: nv-pci-types.h: Datei oder Verzeichnis nicht gefunden
   12 | #include "nv-pci-types.h"
      |          ^~~~~~~~~~~~~~~~
compilation terminated.
make[4]: *** [/usr/src/linux-headers-6.15.3-1-siduction-amd64/scripts/Makefile.build:208: nvidia/nv-pci.o] Fehler 1
make[3]: *** [/usr/src/linux-headers-6.15.3-1-siduction-amd64/Makefile:2027: .] Fehler 2
make[2]: *** [/usr/src/linux-headers-6.15.3-1-siduction-amd64/Makefile:260: __sub-make] Fehler 2
make[2]: Verzeichnis ,,/var/lib/dkms/nvidia-tesla-470/470.256.02/build" wird verlassen
make[1]: *** [Makefile:260: __sub-make] Fehler 2
make[1]: Verzeichnis ,,/usr/src/linux-headers-6.15.3-1-siduction-amd64" wird verlassen
make: *** [Makefile:80: modules] Fehler 2

# exit code: 2
# elapsed time: 00:00:31
----------------------------------------------------------------


Ok, you can't code, but you still might be able to write a bug report for Debian's sake

towo

Ähm, ich habe keinen gepatchten 470er irgendwo hochgeladen.
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

michaa7

Ich hatte eh' nicht verstanden welche Pakete genau du gepatched hast. Ich hatte zwar angenommen dass sich das auf die akttuelle Version bezieht, aber das war nicht offensichtlich.

Kannst du für den 470 was machen?
Ok, you can't code, but you still might be able to write a bug report for Debian's sake

towo

QuoteKannst du für den 470 was machen?

Vermutlich.
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

Teriarch

#9
In Kbuild ist an entsprechender Stelle
ccflags-y = $(EXTRA-CFLAGS)
zu ergänzen und
"del_timer-sync" & Co. ist durch "timer_delete_sync"
in den C-files zu ersetzen. Mit diesen Patches  sollte es laufen.

Ach ja, in:

nvidia-drm-connector.c

ist noch Zeile 305 durch

static enum drm_mode_status nv_drm_connector_mode_valid(struct drm_connector *connector, const struct drm_display_mode *mode)

und jeweils wie gehabt an entsprechender Stelle

+#include <linux/version.h>
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
+#define nv_vm_flags_set(v, f) vm_flags_reset((v), (v)->vm_flags | (f))
+#define nv_vm_flags_clear(v, f) vm_flags_reset((v), (v)->vm_flags & ~(f))
+#endif

zu patchen.

michaa7

Quote from: towo on 2025/06/20, 15:03:38
QuoteKannst du für den 470 was machen?

Vermutlich.

Und  ... wirst du etwas machen? :-) 8)
Ok, you can't code, but you still might be able to write a bug report for Debian's sake

Pip

What I get in # CC [M]  nvidia/nv-dma.o if I understand it correctly is a failure for nv.c to include nvmisc.h. The former is in /usr/src/nvidia-tesla-470-470.256.02/nvidia, the latter in /usr/src/nvidia-tesla-470-470.256.02/common/inc. My apologies for what is undoubtably a stupid question, but is it just a question of changing the directory the include statement has? I put it as
#include "../common/inc/nvmisc.h"
//#include "nvmisc.h"
#include "../common/inc/os-interface.h"
##include "os-interface.h"
#include "../common/inc/nv-linux.h"
//#include "nv-linux.h"
#include "nv-p2p.h"
#include "nv-reg.h"
#include "../common/inc/nv-msi.h"
//#include "nv-msi.h"
#include "nv-pci-table.h"

and it seemed to get past more of the build (though it's now stuck with other files that can't find their include options). I'm trying to find a way to not have to go through each file and I think it's to edit the /usr/src/nvidia-tesla-470-470.256.02/Kbuild file, but I'm not sure where that might be wrong.  It has EXTRA_CFLAGS += -I$(src)/common/inc in it, but I'm not sure where (src) is defined.
Any suggestions on that?
Regardless, it might be the wrong approach - I'm not a programmer. Hopefully I don't break anything.

Teriarch

Quote
Any suggestions on that?

The location of the include files didn't change. The question is, why kernel 6.15 ignores
them while kernel 6.14 doesn't. And the reason is that use of EXTRA_CFLAGS in Kbuild
is deprecated a long time ago in favor of ccflags-y. And kernel 6.15 gets serious about the
deprecation. Since the additional include directories are part of EXTRA_CFLAGS (as can be
seen from Kbuild), the build fails.

Without replacing each and every #include line (your approach) or removing EXTRA_CFLAGS
altogether, a much smarter approach is the inclusion of one single line

ccflags-y = $(EXTRA_CFLAGS)

in Kbuild, when all is said and done about EXTRA_CFLAGS.

All other adjustments are just as obvious, but it takes a lot of tedious work to
patch the files at the right place (after all the patches already applied by the deb file
nvidia-tesla-470-kernel-dkms_470.256.02-7.siduction.1_amd64.deb.

If you are eager to work it out, follow the steps of the previous post.

But don't expect someone else to do it unless there is heavy demand.

Pip

Quote from: Teriarch on 2025/06/21, 17:30:59
But don't expect someone else to do it unless there is heavy demand.
Quite so, and exactly why I started prodding at it on the off-chance I might find something.
I'll gave the ccflags-y = $(EXTRA_CFLAGS) a try and, like you said, it didn't solve things. But it did get a lot further through with lots of warnings, which I was hopeful about, then a lot of error: control reaches end of non-void function lines and cc1: some warnings being treated as errors and lots more warnings, ending with
make[3]: *** [/usr/src/linux-headers-6.15.3-1-siduction-amd64/Makefile:2027: .] Error 2
make[2]: *** [/usr/src/linux-headers-6.15.3-1-siduction-amd64/Makefile:260: __sub-make] Error 2
make[2]: Leaving directory '/var/lib/dkms/nvidia-tesla-470/470.256.02/build'
make[1]: *** [Makefile:260: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.15.3-1-siduction-amd64'
make: *** [Makefile:80: modules] Error 2

# exit code: 2

I might see if I can get any further with it. After all, what could go wrong?

michaa7

Quote from: Teriarch on 2025/06/21, 17:30:59
....but it takes a lot of tedious work to
patch the files at the right place (after all the patches already applied by the deb file
nvidia-tesla-470-kernel-dkms_470.256.02-7.siduction.1_amd64.deb.

If you are eager to work it out, follow the steps of the previous post.

But don't expect someone else to do it unless there is heavy demand.

Really?
Ok, you can't code, but you still might be able to write a bug report for Debian's sake