Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DKMS doesn't work with 6.13 #17

Closed
alaricljs opened this issue Feb 10, 2025 · 16 comments · Fixed by #19
Closed

DKMS doesn't work with 6.13 #17

alaricljs opened this issue Feb 10, 2025 · 16 comments · Fixed by #19
Assignees

Comments

@alaricljs
Copy link

WARNING: `dkms install --no-depmod zfs/2.3.0 -k 6.13.2-arch1-1' exited 1

I haven't found a way to get more out of the build process.

@n0xena n0xena self-assigned this Feb 10, 2025
@n0xena
Copy link
Owner

n0xena commented Feb 10, 2025

Thank you for reporting this issue. I will have a look into at in a VM.
In the mean time: Please note I have updated the repo README to mark this as a somewhat private/personal repo and redirect anyone to the "official" upstream repo https://github.com/archzfs/archzfs
Have you tried thier version?
https://github.com/archzfs/archzfs/releases/download/experimental/zfs-dkms-2.3.0-1-x86_64.pkg.tar.zst
btw: DKMS should only be required if you run a non-standard kernel. If you use one of the standard kernels please prefer the proper packages for them. Running dkms with a standard kernel doesn't make much sense.

@alaricljs
Copy link
Author

alaricljs commented Feb 10, 2025

No problem if you ignore me, I had been using your repo while archzfs status was getting worked out and saw your 2.3.0/6.13.2 release as an opportunity. If you're not patching anything it's due to the lack of zfs upstream support beyond 6.12.* and archzfs won't be any different.

@n0xena
Copy link
Owner

n0xena commented Feb 10, 2025

It's not about ignoring anyone - it's just: I'm not a kernel module dev. I started to just provide pre-built packages as the upstream repo had issues to keep up. I'm happy to help and glad that someone seem to use it other me.
Sure I will try to investigate the issue - but I'm not sure if I'm able to find the cause let alone fix it.
Let me have a look into it and compare my regular build with what dkms does. Maybe I can narrow it down.

@n0xena
Copy link
Owner

n0xena commented Feb 10, 2025

So I narrowed down the issue to the dkms build is missing the --enable-linux-experimental flag - see: openzfs/zfs#16574 (reply in thread)
This makes ./configure fail early on with the error message "compiling against 6.13 - but zfs only supports 6.12".
A possible solution seems to somehow inject the experimental flag into the dkms build process. Unfortunately, as stated above: I'm no dev and hence don't know how to fix this.
I guess the best place to ask how to get this working is in the AUR section of the arch bbs: https://bbs.archlinux.org/viewforum.php?id=38
For now all I can do is acknowledge the issue and update the release page to mark DKMS as broken / for 6.12 only unless either I or someone else finds a fix.

@alaricljs
Copy link
Author

Thanks for the time you put in.

@n0xena n0xena changed the title 2.3.0 / 6.13.2 release for dkms non-functional DKMS doesn't work with 6.13 Feb 10, 2025
@n0xena
Copy link
Owner

n0xena commented Feb 20, 2025

as an update:
ZFS is working on 6.14 already - so I guess it shouldn't take long for either a new RC or a minor update official supporting 6.13 and maybe even 6.14
anyway - I guess as there seem some need for DKMS builds for non-standard kernels I likely will read into pkgbuild and maybe open a topic on the arch bbs

@alaricljs
Copy link
Author

I did some digging and have found no way to inject that specific a directive into the DKMS build unless zfs suports it as an ENV var.

@n0xena
Copy link
Owner

n0xena commented Feb 21, 2025

From my initial debugging of this I noticed that the actual dkms build uses different values for the ./configure command than the regular builds, see

build() {
cd "${zfs_workdir}"
./autogen.sh
./configure --prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin --libdir=/usr/lib \\
--datadir=/usr/share --includedir=/usr/include --with-udevdir=/usr/lib/udev \\
--libexecdir=/usr/lib --with-config=kernel \\
--with-linux=/usr/lib/modules/\${_extramodules}/build \\
--with-linux-obj=/usr/lib/modules/\${_extramodules}/build \\
--enable-linux-experimental
make
}

The way I see this is a flaw in the upstream archzfs repo not correctly providing the proper ./configure parameters and hence dkms is quite different to the regular builds. I will re-raise this issue upstream after I got home and can provide the actual command.
I also read the arch wiki and there is a way to provide such parameters. When this is fixed upstream it should be easy for me to add the missing override to make dkms work with newer kernels.

@n0xena
Copy link
Owner

n0xena commented Feb 22, 2025

just for reference to raise this upstream
clean dkms build for 6.13.3
log output

[main@main ~]$ ssh 192.168.178.150
The authenticity of host '192.168.178.150 (192.168.178.150)' can't be established.
ED25519 key fingerprint is SHA256:UIG80EuKB/GUL48bW+5uc0st00bi7UUCUAyPLCnTBfs.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.178.150' (ED25519) to the list of known hosts.
[email protected]'s password: 
Last login: Sat Feb 22 22:59:20 2025
[main@zfstest ~]$ ls -alFh
insgesamt 61M
drwx------ 3 main main 4,0K 10. Feb 19:20 ./
drwxr-xr-x 3 root root 4,0K 10. Feb 18:48 ../
-rw------- 1 main main 3,2K 22. Feb 23:16 .bash_history
-rw-r--r-- 1 main main   21 24. Sep 21:46 .bash_logout
-rw-r--r-- 1 main main   57 24. Sep 21:46 .bash_profile
-rw-r--r-- 1 main main  172 24. Sep 21:46 .bashrc
drwx------ 3 main main 4,0K 10. Feb 19:20 .cache/
-rw------- 1 main main 1,1K 10. Feb 19:20 .viminfo
-rw-r--r-- 1 main main  165 10. Feb 18:53 .wget-hsts
-rw-r--r-- 1 main main  31M 22. Feb 23:15 zfs-dkms-2.3.0-1-x86_64.pkg.tar.zst
-rw-r--r-- 1 main main  30M 22. Feb 23:15 zfs-utils-2.3.0-1-x86_64.pkg.tar.zst
[main@zfstest ~]$ sudo pacman -S zfs-utils-2.3.0-1-x86_64.pkg.tar.zst 
[sudo] Passwort für main: 
Fehler: Ziel nicht gefunden: zfs-utils-2.3.0-1-x86_64.pkg.tar.zst
Warnung: »zfs-utils-2.3.0-1-x86_64.pkg.tar.zst« ist eine Datei, wollten Sie -U/--upgrade statt -S/--sync benutzen?
[main@zfstest ~]$ sudo pacman -U zfs-utils-2.3.0-1-x86_64.pkg.tar.zst 
Pakete werden geladen …
Abhängigkeiten werden aufgelöst …
Nach in Konflikt stehenden Paketen wird gesucht …

Pakete (1) zfs-utils-2.3.0-1

Gesamtgröße der installierten Pakete:  42,84 MiB

:: Installation fortsetzen? [J/n] 
(1/1) Schlüssel im Schlüsselbund werden geprüft                                                                                               [#######################################################################################] 100%
(1/1) Paket-Integrität wird überprüft                                                                                                         [#######################################################################################] 100%
(1/1) Paket-Dateien werden geladen                                                                                                            [#######################################################################################] 100%
(1/1) Auf Dateikonflikte wird geprüft                                                                                                         [#######################################################################################] 100%
(1/1) Verfügbarer Festplattenspeicher wird ermittelt                                                                                          [#######################################################################################] 100%
:: Paketänderungen werden verarbeitet …
(1/1) Installiert wird zfs-utils                                                                                                              [#######################################################################################] 100%
Optionale Abhängigkeiten für zfs-utils
    python: pyzfs and extra utilities,
    python-cffi: pyzfs
:: Post-transaction-Hooks werden gestartet …
(1/4) Reloading system manager configuration...
(2/4) Reloading device manager configuration...
(3/4) Arming ConditionNeedsUpdate...
(4/4) Updating linux initcpios...
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
==> Using default configuration file: '/etc/mkinitcpio.conf'
  -> -k /boot/vmlinuz-linux -g /boot/initramfs-linux.img
==> Starting build: '6.13.3-arch1-1'
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [autodetect]
  -> Running build hook: [microcode]
  -> Running build hook: [modconf]
  -> Running build hook: [kms]
  -> Running build hook: [keyboard]
  -> Running build hook: [keymap]
  -> Running build hook: [consolefont]
==> WARNING: consolefont: no font found in configuration
  -> Running build hook: [block]
  -> Running build hook: [filesystems]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating zstd-compressed initcpio image: '/boot/initramfs-linux.img'
  -> Early uncompressed CPIO image generation successful
==> Initcpio image generation successful
[main@zfstest ~]$ sudo pacman -S --needed dkms linux-headers
Warnung: dkms-3.1.5-1 ist aktuell -- Überspringe
Warnung: linux-headers-6.13.3.arch1-1 ist aktuell -- Überspringe
 Es gibt nichts zu tun
[main@zfstest ~]$ ls
zfs-dkms-2.3.0-1-x86_64.pkg.tar.zst  zfs-utils-2.3.0-1-x86_64.pkg.tar.zst
[main@zfstest ~]$ sudo pacman -U zfs-dkms-2.3.0-1-x86_64.pkg.tar.zst 
Pakete werden geladen …
Abhängigkeiten werden aufgelöst …
Nach in Konflikt stehenden Paketen wird gesucht …

Pakete (2) lsb-release-2.0.r55.a25a4fc-1  zfs-dkms-2.3.0-1

Gesamtgröße der installierten Pakete:  59,77 MiB

:: Installation fortsetzen? [J/n] 
(2/2) Schlüssel im Schlüsselbund werden geprüft                                                                                               [#######################################################################################] 100%
(1/2) Paket-Integrität wird überprüft                                                                                                         [#######################################################################################] 100%
(1/2) Paket-Dateien werden geladen                                                                                                            [#######################################################################################] 100%
(2/2) Auf Dateikonflikte wird geprüft                                                                                                         [#######################################################################################] 100%
(2/2) Verfügbarer Festplattenspeicher wird ermittelt                                                                                          [#######################################################################################] 100%
:: Paketänderungen werden verarbeitet …
(1/2) Installiert wird lsb-release                                                                                                            [#######################################################################################] 100%
(2/2) Installiert wird zfs-dkms                                                                                                               [#######################################################################################] 100%
:: Post-transaction-Hooks werden gestartet …
(1/3) Arming ConditionNeedsUpdate...
(2/3) Install DKMS modules
==> dkms install --no-depmod zfs/2.3.0 -k 6.13.3-arch1-1
==> WARNING: `dkms install --no-depmod zfs/2.3.0 -k 6.13.3-arch1-1' exited 1
(3/3) Updating linux initcpios...
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
==> Using default configuration file: '/etc/mkinitcpio.conf'
  -> -k /boot/vmlinuz-linux -g /boot/initramfs-linux.img
==> Starting build: '6.13.3-arch1-1'
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [autodetect]
  -> Running build hook: [microcode]
  -> Running build hook: [modconf]
  -> Running build hook: [kms]
  -> Running build hook: [keyboard]
  -> Running build hook: [keymap]
  -> Running build hook: [consolefont]
==> WARNING: consolefont: no font found in configuration
  -> Running build hook: [block]
  -> Running build hook: [filesystems]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating zstd-compressed initcpio image: '/boot/initramfs-linux.img'
  -> Early uncompressed CPIO image generation successful
==> Initcpio image generation successful
[main@zfstest ~]$ sudo dkms status
zfs/2.3.0: added
[main@zfstest ~]$ sudo reboot

Broadcast message from root@zfstest on pts/1 (Sat 2025-02-22 23:20:21 CET):

The system will reboot now!

[main@zfstest ~]$ Connection to 192.168.178.150 closed by remote host.
Connection to 192.168.178.150 closed.
[main@main ~]$ ssh 192.168.178.150
[email protected]'s password: 
Last login: Sat Feb 22 23:17:56 2025 from 192.168.178.26
[main@zfstest ~]$ lsmod
Module                  Size  Used by
vfat                   24576  1
fat                   110592  1 vfat
intel_rapl_msr         20480  0
intel_rapl_common      53248  1 intel_rapl_msr
kvm_amd               237568  0
ccp                   180224  1 kvm_amd
kvm                  1384448  1 kvm_amd
crct10dif_pclmul       12288  1
snd_hda_codec_generic   114688  1
crc32_pclmul           12288  0
polyval_clmulni        12288  0
polyval_generic        12288  1 polyval_clmulni
ghash_clmulni_intel    16384  0
snd_hda_intel          65536  0
sha512_ssse3           49152  0
snd_intel_dspcfg       40960  1 snd_hda_intel
snd_intel_sdw_acpi     16384  1 snd_intel_dspcfg
sha256_ssse3           36864  0
sha1_ssse3             32768  0
snd_hda_codec         212992  2 snd_hda_codec_generic,snd_hda_intel
aesni_intel           122880  0
gf128mul               16384  2 polyval_generic,aesni_intel
snd_hda_core          147456  3 snd_hda_codec_generic,snd_hda_intel,snd_hda_codec
joydev                 28672  0
iTCO_wdt               16384  0
crypto_simd            16384  1 aesni_intel
intel_pmc_bxt          16384  1 iTCO_wdt
snd_hwdep              20480  1 snd_hda_codec
snd_pcm               200704  3 snd_hda_intel,snd_hda_codec,snd_hda_core
iTCO_vendor_support    12288  1 iTCO_wdt
mousedev               24576  0
psmouse               245760  0
cryptd                 28672  2 crypto_simd,ghash_clmulni_intel
pcspkr                 12288  0
i2c_i801               45056  0
snd_timer              57344  1 snd_pcm
i2c_smbus              20480  1 i2c_i801
snd                   155648  6 snd_hda_codec_generic,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_pcm
cfg80211             1392640  0
lpc_ich                32768  0
i2c_mux                16384  1 i2c_i801
soundcore              16384  1 snd
rfkill                 40960  2 cfg80211
mac_hid                12288  0
loop                   45056  0
dm_mod                225280  0
nfnetlink              20480  2
vsock_loopback         12288  0
vmw_vsock_virtio_transport_common    57344  1 vsock_loopback
vmw_vsock_vmci_transport    45056  0
vsock                  61440  5 vmw_vsock_virtio_transport_common,vsock_loopback,vmw_vsock_vmci_transport
vmw_vmci              118784  1 vmw_vsock_vmci_transport
qemu_fw_cfg            20480  0
ip_tables              36864  0
x_tables               65536  1 ip_tables
ext4                 1155072  1
crc32c_generic         12288  0
crc16                  12288  1 ext4
mbcache                16384  1 ext4
jbd2                  208896  1 ext4
serio_raw              20480  0
atkbd                  40960  0
libps2                 20480  2 atkbd,psmouse
vivaldi_fmap           12288  1 atkbd
virtio_net            122880  0
crc32c_intel           12288  2
virtio_rng             12288  0
i8042                  57344  0
net_failover           24576  1 virtio_net
virtio_balloon         32768  0
virtio_blk             36864  2
failover               12288  1 net_failover
virtio_gpu            102400  0
virtio_console         49152  0
intel_agp              24576  0
serio                  28672  6 serio_raw,atkbd,psmouse,i8042
intel_gtt              28672  1 intel_agp
virtio_dma_buf         12288  1 virtio_gpu
hid_generic            12288  0
usbhid                 86016  0
[main@zfstest ~]$ lsmod | sort
aesni_intel           122880  0
atkbd                  40960  0
ccp                   180224  1 kvm_amd
cfg80211             1392640  0
crc16                  12288  1 ext4
crc32c_generic         12288  0
crc32c_intel           12288  2
crc32_pclmul           12288  0
crct10dif_pclmul       12288  1
cryptd                 28672  2 crypto_simd,ghash_clmulni_intel
crypto_simd            16384  1 aesni_intel
dm_mod                225280  0
ext4                 1155072  1
failover               12288  1 net_failover
fat                   110592  1 vfat
gf128mul               16384  2 polyval_generic,aesni_intel
ghash_clmulni_intel    16384  0
hid_generic            12288  0
i2c_i801               45056  0
i2c_mux                16384  1 i2c_i801
i2c_smbus              20480  1 i2c_i801
i8042                  57344  0
intel_agp              24576  0
intel_gtt              28672  1 intel_agp
intel_pmc_bxt          16384  1 iTCO_wdt
intel_rapl_common      53248  1 intel_rapl_msr
intel_rapl_msr         20480  0
ip_tables              36864  0
iTCO_vendor_support    12288  1 iTCO_wdt
iTCO_wdt               16384  0
jbd2                  208896  1 ext4
joydev                 28672  0
kvm                  1384448  1 kvm_amd
kvm_amd               237568  0
libps2                 20480  2 atkbd,psmouse
loop                   45056  0
lpc_ich                32768  0
mac_hid                12288  0
mbcache                16384  1 ext4
Module                  Size  Used by
mousedev               24576  0
net_failover           24576  1 virtio_net
nfnetlink              20480  2
pcspkr                 12288  0
polyval_clmulni        12288  0
polyval_generic        12288  1 polyval_clmulni
psmouse               245760  0
qemu_fw_cfg            20480  0
rfkill                 40960  2 cfg80211
serio                  28672  6 serio_raw,atkbd,psmouse,i8042
serio_raw              20480  0
sha1_ssse3             32768  0
sha256_ssse3           36864  0
sha512_ssse3           49152  0
snd                   155648  6 snd_hda_codec_generic,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_pcm
snd_hda_codec         212992  2 snd_hda_codec_generic,snd_hda_intel
snd_hda_codec_generic   114688  1
snd_hda_core          147456  3 snd_hda_codec_generic,snd_hda_intel,snd_hda_codec
snd_hda_intel          65536  0
snd_hwdep              20480  1 snd_hda_codec
snd_intel_dspcfg       40960  1 snd_hda_intel
snd_intel_sdw_acpi     16384  1 snd_intel_dspcfg
snd_pcm               200704  3 snd_hda_intel,snd_hda_codec,snd_hda_core
snd_timer              57344  1 snd_pcm
soundcore              16384  1 snd
usbhid                 86016  0
vfat                   24576  1
virtio_balloon         32768  0
virtio_blk             36864  2
virtio_console         49152  0
virtio_dma_buf         12288  1 virtio_gpu
virtio_gpu            102400  0
virtio_net            122880  0
virtio_rng             12288  0
vivaldi_fmap           12288  1 atkbd
vmw_vmci              118784  1 vmw_vsock_vmci_transport
vmw_vsock_virtio_transport_common    57344  1 vsock_loopback
vmw_vsock_vmci_transport    45056  0
vsock                  61440  5 vmw_vsock_virtio_transport_common,vsock_loopback,vmw_vsock_vmci_transport
vsock_loopback         12288  0
x_tables               65536  1 ip_tables
[main@zfstest ~]$ sudo dkms status
[sudo] Passwort für main: 
zfs/2.3.0: added
[main@zfstest ~]$ sudo dkms

Error! Unknown action specified: ""
Usage: /usr/bin/dkms [action] [options]
  [action]  = { add | remove | build | unbuild | install | uninstall | match |
               autoinstall | mktarball | ldtarball | status | generate_mok |
               kernel_postinst | kernel_prerm }
  [options] = [-m module] [-v module-version] [-k kernel-version] [-a arch]
              [-c dkms.conf-location] [-q] [--force] [--force-version-override] [--all]
              [--templatekernel=kernel] [--directive='cli-directive=cli-value']
              [--config=kernel-include/config/auto.conf-location] [--archive=tarball-location]
              [--kernelsourcedir=source-location] [--rpm_safe_upgrade]
              [--dkmstree path] [--sourcetree path] [--installtree path]
              [--binaries-only] [--source-only] [--verbose]
              [--no-depmod] [--modprobe-on-install] [-j number] [--version] [--help]
[main@zfstest ~]$ sudo dkms build
Sign command: /usr/lib/modules/6.13.3-arch1-1/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub


Error! Arguments <module> and <module-version> are not specified.
Usage: add <module>/<module-version> or
       add -m <module>/<module-version> or
       add -m <module> -v <module-version>
[main@zfstest ~]$ sudo dkms install
Sign command: /usr/lib/modules/6.13.3-arch1-1/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub


Error! Arguments <module> and <module-version> are not specified.
Usage: add <module>/<module-version> or
       add -m <module>/<module-version> or
       add -m <module> -v <module-version>
[main@zfstest ~]$ sudo dkms autoinstall
Sign command: /usr/lib/modules/6.13.3-arch1-1/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Autoinstall of module zfs/2.3.0 for kernel 6.13.3-arch1-1 (x86_64)
Running the pre_build script...(bad exit status: 1)
Failed command:
cd /var/lib/dkms/zfs/2.3.0/build/ && /var/lib/dkms/zfs/2.3.0/build/configure --disable-dependency-tracking --prefix=/usr --with-config=kernel --with-linux=/usr/lib/modules/6.13.3-arch1-1/build --with-linux-obj=/usr/lib/modules/6.13.3-arch1-1/build --with-qat= 

Autoinstall on 6.13.3-arch1-1 failed for module(s) zfs(1).

Error! One or more modules failed to install during autoinstall.
Refer to previous errors for more information.
[main@zfstest ~]$ cd /var/lib/dkms/zfs/2.3.0/build
[main@zfstest build]$ ./configure --disable-dependency-tracking --prefix=/usr --with-config=kernel --with-linux=/usr/lib/modules/6.13.3-arch1-1/build --with-linux-obj=/usr/lib/modules/6.13.3-arch1-1/build --with-qat=
./configure: line 2313: config.log: Permission denied
./configure: line 2323: config.log: Permission denied
[main@zfstest build]$ sudo ./configure --disable-dependency-tracking --prefix=/usr --with-config=kernel --with-linux=/usr/lib/modules/6.13.3-arch1-1/build --with-linux-obj=/usr/lib/modules/6.13.3-arch1-1/build --with-qat=
checking for gawk... gawk
checking metadata... META file
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports nested variables... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 0.01
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking whether make sets $(MAKE)... yes
checking xargs -n works... yes
checking how to print strings... printf
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... none
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for file... file
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ranlib... ranlib
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... no
checking if : is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) none
checking whether ln -s works... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking dependency style of gcc... none
checking whether to build with code coverage support... no
checking how to create a pax tar archive... gnutar
checking zfs author... OpenZFS
checking zfs license... CDDL
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for ld... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking for shared library run path origin... done
checking 32-bit host C ABI... no
checking for the common suffixes of directories in the library search path... lib,lib
checking zfs config... kernel
checking the number of available CPUs... 8
checking whether gcc supports -Wno-clobbered... yes
checking whether gcc supports -Winfinite-recursion... yes
checking whether  supports -Winfinite-recursion... yes
checking whether gcc supports -Wimplicit-fallthrough... yes
checking whether gcc supports -Wframe-larger-than=<size>... yes
checking whether gcc supports -Wno-format-truncation... yes
checking whether gcc supports -Wno-format-zero-length... yes
checking whether gcc supports -Wformat-overflow... yes
checking whether gcc supports -fno-omit-frame-pointer... yes
checking whether gcc supports -fno-ipa-sra... yes
checking whether  supports -fno-ipa-sra... yes
checking whether to build with -fsanitize=address support... no
checking whether to build with -fsanitize=undefined support... no
checking whether host toolchain supports SSE... yes
checking whether host toolchain supports SSE2... yes
checking whether host toolchain supports SSE3... yes
checking whether host toolchain supports SSSE3... yes
checking whether host toolchain supports SSE4.1... yes
checking whether host toolchain supports SSE4.2... yes
checking whether host toolchain supports AVX... yes
checking whether host toolchain supports AVX2... yes
checking whether host toolchain supports AVX512F... yes
checking whether host toolchain supports AVX512CD... yes
checking whether host toolchain supports AVX512DQ... yes
checking whether host toolchain supports AVX512BW... yes
checking whether host toolchain supports AVX512IFMA... yes
checking whether host toolchain supports AVX512VBMI... yes
checking whether host toolchain supports AVX512PF... yes
checking whether host toolchain supports AVX512ER... yes
checking whether host toolchain supports AVX512VL... yes
checking whether host toolchain supports AES... yes
checking whether host toolchain supports PCLMULQDQ... yes
checking whether host toolchain supports MOVBE... yes
checking whether host toolchain supports XSAVE... yes
checking whether host toolchain supports XSAVEOPT... yes
checking whether host toolchain supports XSAVES... yes
checking for system type (linux-gnu)... Linux
checking for python3... no
checking whether to enable pyzfs: ... no
checking for sed --in-place... --in-place
checking for cppcheck... no
checking for shellcheck... no
checking for checkbashisms... no
checking for parallel... no
checking kernel source and build directories... done
checking kernel source directory... /usr/lib/modules/6.13.3-arch1-1/build
checking kernel build directory... /usr/lib/modules/6.13.3-arch1-1/build
checking kernel source version... 6.13.3-arch1-1
configure: error: 
        *** Cannot build against kernel version 6.13.3-arch1-1.
        *** The maximum supported kernel version is 6.12.

[main@zfstest build]$ 

@n0xena
Copy link
Owner

n0xena commented Feb 26, 2025

with openzfs/zfs#17097 not mention any push to 6.13 and from upstream also no reply yet I guess this will keep standing as for now
so - if you require dkms you have to stick to 6.12 - or use standard kernel for 6.13 support

@n0xena
Copy link
Owner

n0xena commented Mar 2, 2025

so I played a bit around and got this build working
it's only a first test to see if and how the dkms.conf can be patched
for now I just added the experimental flag to allow dkms build for 6.13.x
I discuss upstream if other parameters should be changed, too
please feel free to test and give me a feedback if it works on your setup

@alaricljs
Copy link
Author

smashing. worked on 6.13.4 and 6.13.5

@n0xena n0xena linked a pull request Mar 3, 2025 that will close this issue
@n0xena n0xena closed this as completed in #19 Mar 3, 2025
@n0xena
Copy link
Owner

n0xena commented Mar 3, 2025

just tested on xanmod 6.13.5 - works - merged and closing as fixed

@n0xena
Copy link
Owner

n0xena commented Mar 11, 2025

@alaricljs as a heads up:
according to openzfs/zfs#17026 (comment) current zfs master seem to look good for 6.14 so I'll keep the experimental flag and should be able to provide packages and DKMS for 6.14 as it gets released
I also started to test DKMS against xanmod as a non-standard kernel - although I haven't figured out how to run the test suite, yet
btw what's the fork you require DKMS for? depending on how you acquire it I maybe able to provide pre-built (note: if you compile your own fork that won't work as pre-built packages only work for the very kernel they build against)
in the meantime I'd like to point out that upstream archzfs was finally updated for 6.13 - so if you prefer a more "official" build than my fork please feel free to give it a shot

@alaricljs
Copy link
Author

No fork, I use DKMS for a few other things so when archzfs.com wasn't keeping up with kernel releases DKMS smoothed that out well. That worked until recent kernel changes required ZFS to do their own compat changes as well.

@n0xena
Copy link
Owner

n0xena commented Mar 18, 2025

Ah, ok. I look positive towards 6.14.
As it may could take a few days before a 6.14 will become available in core repo DKMS should work fine with a self-built mainline one.
If anything comes up please feel free to open a new issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants