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

kernel update [RHEL7.3 3.10.0-514.10.2.el7] for lustre 2.7 client

Details

    • Bug
    • Resolution: Fixed
    • Major
    • None
    • Lustre 2.7.0
    • None
    • RHEL7 clients with a file system based on RHEL6 servers.
    • 3
    • 9223372036854775807

    Description

      We are now deploying the first production servers (lustre clients) based on RHEL7 and would want to update to the latest RHEL7 kernel (3.10.0-514.10.2.el7) but trying to build lustre 2.7-fe for this kernel fails with the error below. We have successfully build the client RPMs for earlier kernels (tested up to3.10.0-327.36.3.el7) .

      As our file system currently is 2.7(.3) based, we would quite like to continue deploying 2.7 clients but need help identifying the necessary patches.

      Build error for latest kernel:

      aking all in .
      /tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs/linux/linux-cpu.c: In function 'cfs_cpu_ht_siblings':
      /tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs/linux/linux-cpu.c:109:2: error: implicit declaration of function 'topology_thread_cpumask' [-Werror=implicit-function-declaration]
        cpumask_copy(mask, topology_thread_cpumask(cpu));
        ^
      /tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs/linux/linux-cpu.c:109:2: error: passing argument 2 of 'cpumask_copy' makes pointer from integer without a cast [-Werror]
      In file included from ./arch/x86/include/asm/cpumask.h:4:0,
                       from ./arch/x86/include/asm/msr.h:10,
                       from ./arch/x86/include/asm/processor.h:20,
                       from ./arch/x86/include/asm/thread_info.h:22,
                       from include/linux/thread_info.h:54,
                       from include/linux/preempt.h:9,
                       from include/linux/spinlock.h:50,
                       from include/linux/seqlock.h:35,
                       from include/linux/time.h:5,
                       from include/linux/stat.h:18,
                       from include/linux/sysfs.h:20,
                       from include/linux/kobject.h:21,
                       from include/linux/device.h:17,
                       from include/linux/node.h:17,
                       from include/linux/cpu.h:17,
                       from /tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs/linux/linux-cpu.c:37:
      include/linux/cpumask.h:509:20: note: expected 'const struct cpumask *' but argument is of type 'int'
       static inline void cpumask_copy(struct cpumask *dstp,
                          ^
      /tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs/linux/linux-cpu.c: In function 'cfs_cpu_ht_nsiblings':
      /tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs/linux/linux-cpu.c:119:2: error: passing argument 1 of 'cpumask_weight' makes pointer from integer without a cast [-Werror]
        num = cpumask_weight(topology_thread_cpumask(cpu));
        ^
      In file included from ./arch/x86/include/asm/cpumask.h:4:0,
                       from ./arch/x86/include/asm/msr.h:10,
                       from ./arch/x86/include/asm/processor.h:20,
                       from ./arch/x86/include/asm/thread_info.h:22,
                       from include/linux/thread_info.h:54,
                       from include/linux/preempt.h:9,
                       from include/linux/spinlock.h:50,
                       from include/linux/seqlock.h:35,
                       from include/linux/time.h:5,
                       from include/linux/stat.h:18,
                       from include/linux/sysfs.h:20,
                       from include/linux/kobject.h:21,
                       from include/linux/device.h:17,
                       from include/linux/node.h:17,
                       from include/linux/cpu.h:17,
                       from /tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs/linux/linux-cpu.c:37:
      include/linux/cpumask.h:473:28: note: expected 'const struct cpumask *' but argument is of type 'int'
       static inline unsigned int cpumask_weight(const struct cpumask *srcp)
                                  ^
      cc1: all warnings being treated as errors
      make[7]: *** [/tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs/linux/linux-cpu.o] Error 1
      make[6]: *** [/tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs/libcfs] Error 2
      make[5]: *** [/tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3/libcfs] Error 2
      make[4]: *** [_module_/tmp/rpmbuild-lustre-bnh65367-bnv3F61B/BUILD/lustre-2.7.3] Error 2
      make[3]: *** [modules] Error 2
      make[2]: *** [all-recursive] Error 1
      make[1]: *** [all] Error 2
      error: Bad exit status from /tmp/rpmbuild-lustre-bnh65367-bnv3F61B/TMP/rpm-tmp.fa5XL9 (%build)
      

      Attachments

        Issue Links

          Activity

            [LU-9310] kernel update [RHEL7.3 3.10.0-514.10.2.el7] for lustre 2.7 client
            pjones Peter Jones added a comment -

            ok - thanks Frederick

            pjones Peter Jones added a comment - ok - thanks Frederick

            Peter,

            apologies for the delay in updating this ticket. This is resolved as we've successfully deployed our RHEL7 servers with Lustre 2.9.

            thanks,
            Frederik

            ferner Frederik Ferner (Inactive) added a comment - Peter, apologies for the delay in updating this ticket. This is resolved as we've successfully deployed our RHEL7 servers with Lustre 2.9. thanks, Frederik
            pjones Peter Jones added a comment -

            Frederik

            We have FE customers using RHEL 7.3 on both 2.8.x and 2.9.x. It should be possible to use either of these clients with 2.7.x servers but FWIW sites I am aware of running in interop mode with 2.7.x servers are using 2.9 clients.

            Peter

            pjones Peter Jones added a comment - Frederik We have FE customers using RHEL 7.3 on both 2.8.x and 2.9.x. It should be possible to use either of these clients with 2.7.x servers but FWIW sites I am aware of running in interop mode with 2.7.x servers are using 2.9 clients. Peter

            Is there a chance to get support for el7.3 in b2_7_fe?

            Alternatively, does a 2.9 client work with 2.7 servers or would we need to upgrade the servers as well?

            I also noticed that b2_8_fe in the changelog suggests that it would work with the kernel we're after, so that seems to be another option.

            ferner Frederik Ferner (Inactive) added a comment - Is there a chance to get support for el7.3 in b2_7_fe? Alternatively, does a 2.9 client work with 2.7 servers or would we need to upgrade the servers as well? I also noticed that b2_8_fe in the changelog suggests that it would work with the kernel we're after, so that seems to be another option.
            bogl Bob Glossman (Inactive) added a comment - - edited

            ferner,
            There is no support for el7.3 in 2.7. Going to a later kernel version won't help. You must move to a later lustre version to get support for any el7.3 clients.

            Only 2.9 or later has any support for el7.3

            bogl Bob Glossman (Inactive) added a comment - - edited ferner , There is no support for el7.3 in 2.7. Going to a later kernel version won't help. You must move to a later lustre version to get support for any el7.3 clients. Only 2.9 or later has any support for el7.3

            Hi,

            any thoughts on this? This is currently holding up the roll out for some upgrades services into production.

            Forgot to mention, if it would be easier, we would also consider using more recent RHEL7 kernels (i.e. 3.10.0-514.16.1.el7 would also be ok, though I've not tried to build the lustre client modules for that yet.)

            Thanks,
            Frederik

            ferner Frederik Ferner (Inactive) added a comment - - edited Hi, any thoughts on this? This is currently holding up the roll out for some upgrades services into production. Forgot to mention, if it would be easier, we would also consider using more recent RHEL7 kernels (i.e. 3.10.0-514.16.1.el7 would also be ok, though I've not tried to build the lustre client modules for that yet.) Thanks, Frederik
            pjones Peter Jones added a comment -

            Bob

            Could you please advuse on this one?

            THanks

            Peter

            pjones Peter Jones added a comment - Bob Could you please advuse on this one? THanks Peter

            People

              bogl Bob Glossman (Inactive)
              ferner Frederik Ferner (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: