[LU-5234] lustre builds on 3.12 kernels are broken Created: 19/Jun/14 Updated: 23/Jun/14 Resolved: 23/Jun/14 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Lustre 2.6.0 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Bob Glossman (Inactive) | Assignee: | Bob Glossman (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | HB, patch | ||
| Issue Links: |
|
||||||||
| Severity: | 3 | ||||||||
| Rank (Obsolete): | 14588 | ||||||||
| Description |
|
As noted by recent comment in 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. |
| Comments |
| Comment by James A Simmons [ 19/Jun/14 ] |
|
I think I know what this is. I saw this when I was testing my 3.15 client. P.S |
| Comment by James A Simmons [ 20/Jun/14 ] |
| Comment by James A Simmons [ 20/Jun/14 ] |
|
As a side note I really hope rhel7 client testing will start soon to avoid this problems in the future. Even if we could do a simple build test. |
| Comment by Peter Jones [ 20/Jun/14 ] |
|
Bob Please can you test and review James's patch James Yes the builders should be up and running shortly Peter |
| Comment by Bob Glossman (Inactive) [ 20/Jun/14 ] |
|
James |
| Comment by James A Simmons [ 20/Jun/14 ] |
|
That is excellent news. I was under the impression that RHEL7 client got broke at the last minute. You never know what gets back ported by Red Hat |
| Comment by Bob Glossman (Inactive) [ 20/Jun/14 ] |
|
It very well might have been an issue for rhel7 too. It's so very hard to predict what RH chooses to back port. Their 3.10 has many features from 3.12 and even later kernels. I'm glad they didn't back port the readdir changes. |
| Comment by Peter Jones [ 23/Jun/14 ] |
|
Landed for 2.6 |