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

Lustre client build failed with Mellanox OFED

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Fix
    • Minor
    • None
    • Lustre 2.4.3
    • None
    • sles11sp3 3.0.101-0.31.1
      Mellanox OFED.2.2.1.0.0.1.gdf6fefb
    • 3
    • 15339

    Description

      I tried to compile lustre-2.4.3 client with Mellanox OFED.2.2.1.0.0.1.gdf6fefb. The compilation failed. It failed at
      /usr/src/ofa_kernel/default/include/linux/pm_qos_params.h:27: error: ‘LINUX_BACKPORT’ declared as function returning a function

      I saw LU-5224 and cherry-picked the patch, but it still failed:

      ...
      make[5]: Entering directory `/usr/src/linux-3.0.101-0.31.1.20140612nasa-obj/x86_64/nasa'
      In file included from /usr/src/linux-3.0.101-0.31.1.20140612nasa/include/linux/netdevice.h:35,
      from /usr/src/linux-3.0.101-0.31.1.20140612nasa/include/net/sock.h:51,
      from /usr/src/packages/BUILD/lustre-2.4.3/libcfs/include/libcfs/linux/linux-tcpip.h:53,
      from /usr/src/packages/BUILD/lustre-2.4.3/libcfs/include/libcfs/linux/libcfs.h:57,
      from /usr/src/packages/BUILD/lustre-2.4.3/libcfs/include/libcfs/libcfs.h:48,
      from /usr/src/packages/BUILD/lustre-2.4.3/libcfs/libcfs/linux/linux-tracefile.c:41:
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:27: error: 'LINUX_BACKPORT' declared as function returning a function
      cc1: warnings being treated as errors
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:27: error: parameter names (without types) in function declaration
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:29: error: 'LINUX_BACKPORT' declared as function returning a function
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:29: error: parameter names (without types) in function declaration
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:31: error: 'LINUX_BACKPORT' declared as function returning a function
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:31: error: parameter names (without types) in function declaration
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:34: error: 'LINUX_BACKPORT' declared as function returning a function
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:34: error: parameter names (without types) in function declaration
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:37: error: 'LINUX_BACKPORT' declared as function returning a function
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:37: error: parameter names (without types) in function declaration
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:39: error: 'LINUX_BACKPORT' declared as function returning a function
      /usr/src/ofa_kernel/nasa/include/linux/pm_qos_params.h:39: error: parameter names (without types) in function declaration
      In file included from /usr/src/linux-3.0.101-0.31.1.20140612nasa/include/net/sock.h:51,
      from /usr/src/packages/BUILD/lustre-2.4.3/libcfs/include/libcfs/linux/linux-tcpip.h:53,
      from /usr/src/packages/BUILD/lustre-2.4.3/libcfs/include/libcfs/linux/libcfs.h:57,
      from /usr/src/packages/BUILD/lustre-2.4.3/libcfs/include/libcfs/libcfs.h:48,
      from /usr/src/packages/BUILD/lustre-2.4.3/libcfs/libcfs/linux/linux-tracefile.c:41:
      /usr/src/linux-3.0.101-0.31.1.20140612nasa/include/linux/netdevice.h:1064: error: field 'pm_qos_req' has incomplete type
      make[10]: *** [/usr/src/packages/BUILD/lustre-2.4.3/libcfs/libcfs/linux/linux-tracefile.o] Error 1

      The LU-5224 patch tried to address the compilation problem at o2iblnd.h. However, all C files that include <net/sock.h> would end up including <linux/pm_qos_params.h> and hit this problem. There are more files in the lustre code do that other than o2iblnd.c

      I think the correct fix is to add the define
      -DCOFIG_COMPAT_PM_QOS
      to
      EXTRA_LNET_INCLUDE="$EXTRA_LNET_INCLUDE -DCONFIG_COMPAT_SLES_11_$SP -DCONFIG_COMPAT_PM_QOS"
      in config/lustre-build-linux.m4.

      I am not sure if we need to qualify which sles11sp? kernel version? so that the fix would not break unaffected kernel versions. LU-5224 patch was not a correct fix.

      Attachments

        Activity

          People

            bogl Bob Glossman (Inactive)
            jaylan Jay Lan (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: