Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-20704

build: o2ib auto-detection picks the wrong ofa_kernel tree

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Medium Medium
    • Lustre 2.18.0
    • None
    • None
    • 3
    • 9223372036854775807

      With a recent DOCA-Host installed via deb packages, automatic o2ib detection (--with-o2ib=yes or omitted) picks the raw mlnx-ofed-kernel source tree instead of the built one, and configure then fails with "can't compile with OpenIB gen2 headers".

      root@ubuntu2604:~# ll /usr/src/ | grep ofa_kernel
      drwxr-xr-x  3 root root 4096 Sep  7 01:14 ofa_kernel/
      lrwxrwxrwx  1 root root   29 Aug 19 11:23 ofa_kernel-2607.0.100@ -> mlnx-ofed-kernel-2607.0.100-1
      drwxr-xr-x  3 root root 4096 Sep  7 01:14 ofa_kernel-dkms/ 
      
      root@ubuntu2604:~e# dpkg --listfiles mlnx-ofed-kernel-dkms | grep ofa_kernel
      /usr/src/mlnx-ofed-kernel-2607.0.100-1/ofed_scripts/mlnx-ofa_kernel.spec
      /usr/src/ofa_kernel-2607.0.100
      
      root@ubuntu2604:~# cd fs-lustre-release/
      root@ubuntu2604:~/fs-lustre-release# ./autogen.sh && ./configure
      ...
      checking whether to enable tunable backoff TCP support... yes
      checking if Linux kernel has tunable backoff TCP support... no
      checking if external o2iblnd needs to use Compat RDMA... yes
      checking whether to use any OFED backport headers... no
      checking whether to enable OpenIB gen2 support... no
      configure: error: cannot compile with OpenIB gen2 headers
      
      root@ubuntu2604:~/fs-lustre-release# grep -A 13 "OpenIB gen2 support" config.log
      configure:24163: checking whether to enable OpenIB gen2 support
      configure:24223: cp conftest.c kconftest.dir && make -d modules LDFLAGS= LD=ld -m elf_x86_64 CC=gcc LINUXINCLUDE= -include /usr/src/ofa_kernel-2607.0.100/include/linux/compat-2.6.h -I/usr/src/mlnx-ofed-kernel-2607.0.100-1/include -I/usr/src/mlnx-ofed-kernel-2607.0.100-1/include/uapi -I/lib/modules/7.0.0-31-generic/build/arch/x86/include -Iinclude -Iarch/x86/include/generated -I/lib/modules/7.0.0-31-generic/build/include -Iinclude2 -I/lib/modules/7.0.0-31-generic/build/include/uapi -Iinclude/generated -I/lib/modules/7.0.0-31-generic/build/arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I/lib/modules/7.0.0-31-generic/build/include/uapi -Iinclude/generated/uapi -I/lib/modules/7.0.0-31-generic/build/arch/x86/include/generated -I/lib/modules/7.0.0-31-generic/build/arch/x86/include/generated/uapi -I/lib/modules/7.0.0-31-generic/build/include/generated -I/lib/modules/7.0.0-31-generic/build/include/generated/uapi -I/usr/src/linux-headers-7.0.0-31-generic/include -I/usr/src/linux-headers-7.0.0-31-generic/include/generated/uapi -I/usr/src/linux-headers-7.0.0-31-generic/arch/x86/include/generated -I/usr/src/linux-headers-7.0.0-31-generic/arch/x86/include/generated/uapi -include /lib/modules/7.0.0-31-generic/build/include/linux/kconfig.h KBUILD_EXTRA_SYMBOLS=  -o tmp_include_depends -o scripts -o include/config/MARKER -C /usr/src/linux-headers-7.0.0-31-generic EXTRA_CFLAGS=-Werror-implicit-function-declaration -g -I/root/fs-lustre-release/lnet/include -I/root/fs-lustre-release/lustre/include -I/root/fs-lustre-release/include -Wno-format-truncation -Wno-stringop-truncation -Wno-stringop-overflow -Wno-gnu M=/root/fs-lustre-release/kconftest.dir
      warning: the compiler differs from the one used to build the kernel
        The kernel was built by: x86_64-linux-gnu-gcc (Ubuntu 15.2.0-16ubuntu1) 15.2.0
        You are using:           gcc (Ubuntu 15.2.0-16ubuntu1) 15.2.0
      warning: pahole version differs from the one used to build the kernel
        The kernel was built with: 131
        You are using:             0
      In file included from <command-line>:
      /usr/src/ofa_kernel-2607.0.100/include/linux/compat-2.6.h:7:10: fatal error: ../../compat/config.h: No such file or directory
          7 | #include "../../compat/config.h"
            |          ^~~~~~~~~~~~~~~~~~~~~~~
      compilation terminated.
      make[3]: *** [/usr/src/linux-headers-7.0.0-31-generic/scripts/Makefile.build:289: conftest.o] Error 1

            xyang Xiao Yang
            xyang Xiao Yang
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: