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

lustre builds on 3.12 kernels are broken

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Critical
    • Lustre 2.6.0
    • None
    • 3
    • 14588

    Description

      As noted by recent comment in LU-4416 builds of lustre on 3.12 kernels no longer work. Suspect this is due to the recent landing of a fix from LU-4906 in master. Can't even build clients which did work until very recently. example errors:

        CC [M]  /home/bogl/lustre-release/lustre/llite/dir.o
      /home/bogl/lustre-release/lustre/llite/dir.c: In function
      bll_dir_readb:
      /home/bogl/lustre-release/lustre/llite/dir.c:249:4: error: implicit
      declaration of function bfilldirb
      [-Werror=implicit-function-declaration]
          done = filldir(cookie, ent->lde_name, namelen, lhash,
          ^
      /home/bogl/lustre-release/lustre/llite/dir.c:249:19: error: bcookieb
      undeclared (first use in this function)
          done = filldir(cookie, ent->lde_name, namelen, lhash,
                         ^
      /home/bogl/lustre-release/lustre/llite/dir.c:249:19: note: each undeclared
      identifier is reported only once for each function it appears in
      cc1: all warnings being treated as errors
      scripts/Makefile.build:324: recipe for target
      '/home/bogl/lustre-release/lustre/llite/dir.o' failed
      make[6]: *** [/home/bogl/lustre-release/lustre/llite/dir.o] Error 1
      scripts/Makefile.build:485: recipe for target
      '/home/bogl/lustre-release/lustre/llite' failed
      make[5]: *** [/home/bogl/lustre-release/lustre/llite] Error 2
      scripts/Makefile.build:485: recipe for target
      '/home/bogl/lustre-release/lustre' failed
      make[4]: *** [/home/bogl/lustre-release/lustre] Error 2
      Makefile:1269: recipe for target '_module_/home/bogl/lustre-release' failed
      make[3]: *** [_module_/home/bogl/lustre-release] Error 2
      make[3]: Leaving directory '/home/bogl/linux-3.12.21-2'
      autoMakefile:1022: recipe for target 'modules' failed
      make[2]: *** [modules] Error 2
      make[2]: Leaving directory '/home/bogl/lustre-release'
      autoMakefile:569: recipe for target 'all-recursive' failed
      make[1]: *** [all-recursive] Error 1
      make[1]: Leaving directory '/home/bogl/lustre-release'
      autoMakefile:474: recipe for target 'all' failed
      make: *** [all] Error 2
      

      I think this is due to recent changes to readdir code in lustre/llite/dir.c that don't take into account the HAVE_DIR_CONTEXT case from autoconf. Code was adjusted elsewhere in lustre to adapt to HAVE_DIR_CONTEXT being #define'ed or #undef'ed.

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: