I’m still running Fedora 31 on my main desktop though Fedora 32 beta has been out for a while. The only reason that stops me from jumping to F32 now is because ZFS 0.8.3 is not compatible with the kernel 5.6.* on F32. Rumor has it, ZFS 0.8.4 will support kernel 5.6.

Tonight, while doing the system update with sudo dnf update -y on F31 desktop, I noticed that the kernel for F31 is now kernel-5.6.6-200.fc31.x86_64. Wait, what? I didn’t interrupt the update process, and let it run till finish.

So let’s check if the ZFS kernel module is built for this new 5.6 kernel:

[root@watamem ~]# dkms status
zfs, 0.8.3, 5.5.16-200.fc31.x86_64, x86_64: installed
zfs, 0.8.3, 5.5.17-200.fc31.x86_64, x86_64: installed

Alright, there is 5.6.6-200* listed there. Fine, let’s build it manually:

[root@watamem ~]# dkms build zfs/0.8.3 -k 5.6.6-200.fc31.x86_64 
...
Building module:
cleaning build area...
make -j4 KERNELRELEASE=5.6.6-200.fc31.x86_64...(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.6.6-200.fc31.x86_64 (x86_64)
Consult /var/lib/dkms/zfs/0.8.3/build/make.log for more information.

I already knew this would happen. Anyway, I need to remove this kernel-5.6.6-200.fc31.x86_64.

[root@watamem ~]# dnf remove kernel-5.6.6-200.fc31.x86_64 \
kernel-core-5.6.6-200.fc31.x86_64 \
kernel-devel-5.6.6-200.fc31.x86_64 \

Until ZFS 0.8.4 is available, I need to append --exclude option to dnf update as:

[root@watamem ~]# dnf update --exclude=kernel,kernel-core,kernel-devel

Read more at: