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

checking for Ubuntu kernel signature failed with kernel 6.11

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.17.0
    • Lustre 2.16.0
    • None
    • 3
    • 9223372036854775807

    Description

      While building Lustre with kernel 6.11.0-061100-generic on Ubuntu 24.04, configure log showed that:

      checking for Linux kernel utsrelease... 6.11.0-061100-generic
      checking for RedHat kernel release number...
      checking if Linux kernel was built with CONFIG_SUSE_KERNEL... no
      checking for Ubuntu kernel signature... no
      checking for Debian kernel signature... grep: /usr/src/linux-headers-6.11.0-061100-generic/include/generated/package.h: No such file or directory
      no
      checking for ELRepo -ml kernel signature on CentOS... no
      checking for openEuler kernel version number...
      configure: WARNING: Kernel Distro seems to be neither RedHat, SuSE, openEuler, Ubuntu nor Debian
      checking for Linux kernel module package directory... configure: WARNING: Kernel Distro seems to be neither RedHat, SuSE, openEuler, Ubuntu nor Debian

      And in config/lustre-build-linux.m4:

              # Check for Ubuntu
              AS_IF([test "x$KERNEL_FOUND" = "xno"], [
                      AC_CACHE_CHECK([for Ubuntu kernel signature], lb_cv_ubuntu_kernel_sig, [
                              lb_cv_ubuntu_kernel_sig="no"
                              AS_IF([fgrep -q "CONFIG_VERSION_SIGNATURE \"Ubuntu" $LINUX_OBJ/include/generated/autoconf.h], [
                                      lb_cv_ubuntu_kernel_sig="yes"
                              ])
                      ])
                      AS_IF([test "x$lb_cv_ubuntu_kernel_sig" = "xyes"], [
                              UBUNTU_KERNEL="yes"
                              KERNEL_FOUND="yes"
                      ])
              ])
      

      It turned out CONFIG_VERSION_SIGNATURE was not defined in autoconf.h:

      # grep CONFIG_VERSION_SIGNATURE /usr/src/linux-headers-6.11.0-061100-generic/include/generated/autoconf.h
      

      Kernel should be detected with UTS_RELEASE:

      $ grep -rn RELEASE /usr/src/linux-headers-6.11.0-061100-generic/include/
      /usr/src/linux-headers-6.11.0-061100-generic/include/generated/utsrelease.h:1:#define UTS_RELEASE "6.11.0-061100-generic"
      /usr/src/linux-headers-6.11.0-061100-generic/include/generated/utsrelease.h:2:#define UTS_UBUNTU_RELEASE_ABI 061100
      

      Attachments

        Activity

          People

            yujian Jian Yu
            yujian Jian Yu
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: