-
Bug
-
Resolution: Unresolved
-
Medium
-
None
-
None
-
None
-
3
-
9223372036854775807
The rpm and deb packaging don't use the o2ib (OFED) configuration detected by ./configure, but determine it again on their own, which is unreliable: lustre.spec searches /usr/src/ofa_kernel/ with find -H, which misses the symlinked OFED directories of DOCA-OFED DKMS packages, and the deb ext_o2ib/int_o2ib build profiles depend on DPKG_EXT_O2IB and DPKG_INT_O2IB, which configure never substitutes.
For example, on Rocky Linux 10.1 with DOCA-OFED 3.5.0 (mlnx-ofa_kernel-dkms), ./configure without --with-o2ib (or with --with-o2ib=yes) detects the external OFED correctly, but make rpms fails:
# rpm -qa | grep doca doca-host-3.5.0-082000_26.07_rhel10.x86_64 doca-sosreport-4.9.0-8.el10.noarch doca-ofed-3.5.0-082000.x86_64 doca-ofed-userspace-3.5.0-082000.x86_64 # ll /usr/src/ofa_kernel/ total 4 lrwxrwxrwx 1 root root 36 Sep 7 05:52 default -> /etc/alternatives/ofa_kernel_headers drwxr-xr-x 2 root root 4096 Sep 7 06:02 x86_64 # ll -d /usr/src/ofa_kernel/default lrwxrwxrwx 1 root root 36 Sep 7 05:52 /usr/src/ofa_kernel/default -> /etc/alternatives/ofa_kernel_headers # realpath /usr/src/ofa_kernel/default /usr/src/ofa_kernel-dkms/x86_64/6.12.0-124.28.1.el10_1.x86_64 # ll -d /usr/src/ofa_kernel/x86_64/6.12.0-124.28.1.el10_1.x86_64 lrwxrwxrwx 1 root root 61 Sep 7 06:02 /usr/src/ofa_kernel/x86_64/6.12.0-124.28.1.el10_1.x86_64 -> /usr/src/ofa_kernel-dkms/x86_64/6.12.0-124.28.1.el10_1.x86_64 # realpath /usr/src/ofa_kernel/x86_64/6.12.0-124.28.1.el10_1.x86_64 /usr/src/ofa_kernel-dkms/x86_64/6.12.0-124.28.1.el10_1.x86_64 # ./autogen.sh && ./configure && make rpms ... + CONFIGURE_ARGS= + '[' -n '' ']' + WITH_KFI= + WITH_O2IB= ++ find -H /usr/src/ofa_kernel/ -type d -name ofed_scripts ++ xargs dirname dirname: missing operand Try 'dirname --help' for more information. + o2ib_path= error: Bad exit status from /tmp/rpmbuild-lustre-root-xKpIArvl/TMP/rpm-tmp.egix0J (%build)RPM build errors: Bad exit status from /tmp/rpmbuild-lustre-root-xKpIArvl/TMP/rpm-tmp.egix0J (%build)
Also, make dkms-debs builds all kernel modules on the build host, which are never used, as DKMS rebuilds them on the target, and it never generates lustre-tests.install, so lustre-tests is empty on a clean tree. Skip the kernel modules for dkms-debs and generate lustre-tests.install without the test modules, which are left to DKMS as for dkms-rpm.
# ./autogen.sh && ./configure && make dkms-debs ... # cd debs/ # dpkg -c lustre-tests_2.17.58-40-g7b6f742-1_amd64.deb drwxr-xr-x root/root 0 2026-10-06 04:56 ./ drwxr-xr-x root/root 0 2026-10-06 04:56 ./usr/ drwxr-xr-x root/root 0 2026-10-06 04:56 ./usr/share/ drwxr-xr-x root/root 0 2026-10-06 04:56 ./usr/share/doc/ drwxr-xr-x root/root 0 2026-10-06 04:56 ./usr/share/doc/lustre-tests/ -rw-r--r-- root/root 362 2026-10-06 04:56 ./usr/share/doc/lustre-tests/changelog.Debian.gz -rw-r--r-- root/root 84083 2026-09-10 02:06 ./usr/share/doc/lustre-tests/changelog.gz -rw-r--r-- root/root 19180 2026-09-10 02:06 ./usr/share/doc/lustre-tests/copyright