[lustre-discuss] dkms-2.8.6 breaks installation of lustre-zfs-dkms-2.12.7-1.el7.noarch

Franke, Knut knut.franke at atos.net
Thu Oct 21 11:38:19 PDT 2021


Hi,

Am Mittwoch, dem 13.10.2021 um 16:06 -0700 schrieb Riccardo Veraldi:
> 
> This is my patch to make things works and build the lustre-dkms rpm

Thank you! I just ran into the exact same problem. Two comments on the
patch:

> -	ZFS_VERSION=$(dkms status -m zfs -k $3 -a $5 | awk -F', ' '{print $2; exit 0}' | grep -v ': added$')
> +	ZFS_VERSION=$(dkms status -m zfs | awk ' { print $1 } ' | sed -e 's/zfs\///' -e 's/,//')

This produces an incorrect result if the dkms module is already built
for multiple kernel versions. I would suggest picking the largest zfs
version for simplicity's sake:

+	ZFS_VERSION=$(dkms status -m zfs | awk ' { print $1 } ' | sed
-e 's/zfs\///' -e 's/,//' | sort -V | tail -n1)

Secondly,

> + 	SERVER="--enable-server $LDISKFS \
> +-		--with-linux=$4 --with-linux-obj=$4 \
> +-		--with-spl=$6/spl-${ZFS_VERSION} \
> +-		--with-spl-obj=$7/spl/${ZFS_VERSION}/$3/$5 \
> +-		--with-zfs=$6/zfs-${ZFS_VERSION} \
> +-		--with-zfs-obj=$7/zfs/${ZFS_VERSION}/$3/$5"
> ++		--with-zfs=/usr/src/zfs-${ZFS_VERSION} \
> ++		--with-zfs-obj=/var/lib/dkms/zfs/${ZFS_VERSION}/$3/$5"

This fails if we're building for a newly installed kernel we haven't
rebooted to yet (or rather, any kernel version other than the one
that's currently booted). Also, we might want to keep open the
possibility of building for non-x86 that was present in the original
(though I don't now whether Luster even supports non-x86). So:

+		--with-zfs-obj=/var/lib/dkms/zfs/${ZFS_VERSION}/$3/$5"

To be honest, I don't understand why this second block of changes is
necessary at all; but I currently don't have the time to do any more
experiments..

Cheers,
Knut



More information about the lustre-discuss mailing list