My apologies. There were a couple of problems with my build environment.
First, there was an old config cache messing up the configuration step. Also,
the gcc being used was v7, not v8. Both versions are present but v7 is the
default. After fixing those problems and disabling gss I’m left with a single
failure which Shaun referenced below (commit
7674f2c976744c38fd761518db92e01b22de2fbb) :
/usr/src/lustre-2.13.0/lnet/klnds/o2iblnd/o2iblnd.c: In function
‘kiblnd_destroy_conn’:
/usr/src/lustre-2.13.0/lnet/klnds/o2iblnd/o2iblnd.c:1046:6: error: void value
not ignored as it ought to be
rc = ib_destroy_cq(conn->ibc_cq);
^
make[6]: *** [scripts/Makefile.build:281:
/usr/src/lustre-2.13.0/lnet/klnds/o2iblnd/o2iblnd.o] Error 1
make[6]: *** Waiting for unfinished jobs....
make[5]: *** [scripts/Makefile.build:497:
/usr/src/lustre-2.13.0/lnet/klnds/o2iblnd] Error 2
make[4]: *** [scripts/Makefile.build:497: /usr/src/lustre-2.13.0/lnet/klnds]
Error 2
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [scripts/Makefile.build:497: /usr/src/lustre-2.13.0/lnet] Error 2
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [Makefile:1634: _module_/usr/src/lustre-2.13.0] Error 2
make[1]: *** [autoMakefile:1024: modules] Error 2
make: *** [autoMakefile:574: install-recursive] Error 1
I’ll pursue the update to kiblnd_destroy_conn(). Thanks.
Andrew Tauferner
From: Shaun Tancheff <[email protected]>
Sent: Thursday, December 19, 2019 11:31 PM
To: Tauferner, Andrew T <[email protected]>;
[email protected]
Subject: Re: [lustre-discuss] Lustre and Linux 5.x
Hi Andrew,
It looks like 2.13.0 is missing a few patches for 5.3.
7674f2c976744c38fd761518db92e01b22de2fbb (HEAD -> test) LU-12904 o2ib:
ib_destroy_cq() returns void
c22267e5a38c46a24ef3763131ee85cb57a16e5d LU-12904 build: account_page_dirtied
is not exported
e2735d07403c0cd533fe6ceac133a900871b3883 LU-12634 llite: Use __xa_set_mark if
it is available
ee3ecf5b6290081dff7c197b63b5087dcb299a9c LU-12634 libcfs: force_sig() removed
task parameter
a298f8c1376485512f83472a22dc755f47947e75 (tag: v2_13_0, tag: 2.13.0,
origin/b2_13) New release 2.13.0
Will build on CentOS against 5.3.0 mainline kernel:
$ git clean -dfx
$ sh ./autogen.sh
$ ./configure --disable-server --enable-client
--with-linux=/usr/src/kernels/5.3.0-1.el7.x86_64 --disable-gss
$ ./LUSTRE-VERSION-GEN
2.12.58_197_g7674f2c
$ gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
If you are using gss then there are still 2 more patches pending to land on
master that you will need to cherry-pick from gerrit:
https://review.whamcloud.com/35743
https://review.whamcloud.com/36580
1735f8697a08d5edbf4a12dcfd402358dd4bfadb (in-review-gerrit) LU-12904 ldiskfs:
Add ldiskfs support for linux 5.4
df0788accd0cb9260b3036b6f8a2b61a8122a56e LU-12904 gss: struct cache_detail
readers changed to writers
f206a46c127dfde490ce61080645b3ee2b1d3127 LU-12634 gss: uid_keyring and
session_keyring moved
9fb6818fe3d1e0130e147c5cf740e5e9a2631166 (origin/master, origin/HEAD,
lunar/master, master) LU-12787 tests: skip project quota if it is disabled
On top of 2.13.0 tag:
305cadaa77de8833a5eb501389742bfb5584410f (HEAD -> test) LU-12904 gss: struct
cache_detail readers changed to writers
6bf763bf35559a5008077ee37ba74d0075c1604a LU-12634 gss: uid_keyring and
session_keyring moved
7674f2c976744c38fd761518db92e01b22de2fbb LU-12904 o2ib: ib_destroy_cq() returns
void
c22267e5a38c46a24ef3763131ee85cb57a16e5d LU-12904 build: account_page_dirtied
is not exported
e2735d07403c0cd533fe6ceac133a900871b3883 LU-12634 llite: Use __xa_set_mark if
it is available
ee3ecf5b6290081dff7c197b63b5087dcb299a9c LU-12634 libcfs: force_sig() removed
task parameter
a298f8c1376485512f83472a22dc755f47947e75 (tag: v2_13_0, tag: 2.13.0,
origin/b2_13) New release 2.13.0
a4af7575718a06169866cc11e7b6cdfa266d44e1 LU-13030 pcc: Init saved dataset flags
properly
$ git clean -dfx
$; sh ./autogen.sh
$ ./configure --disable-server --enable-client
--with-linux=/usr/src/kernels/5.3.0-1.el7.x86_64
$ make -j16
$ ./LUSTRE-VERSION-GEN
2.12.58_199_g305cada
Depending on the version of gcc you are using you may need to grab some of the
gcc8 fixes as well.
I’m thinking of this one:
LU-12904 build: Support for gcc -Wimplicit-fallthrough
And possibly this one:
LU-12904 build: External _module_ decorator removed
If should also get you up to mainline 5.4 (depending on what patches have been
pulled into you 5.3 kernel).
This ‘error: "___wait_var_event" redefined [-Werror]’ I have not seen .. if you
are still seeing this it would help if you include the exact kernel version and
configure that you are working with.
Hope this helps,
--Shaun
From: lustre-discuss
<[email protected]<mailto:[email protected]>>
on behalf of "Tauferner, Andrew T"
<[email protected]<mailto:[email protected]>>
Date: Friday, December 20, 2019 at 4:33 AM
To: "[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>
Subject: [lustre-discuss] Lustre and Linux 5.x
I’m trying to build the Lustre client for a 5.3 kernel but I’m getting lots of
errors. I thought that 2.13 was going to support Linux 5.x kernels. Here’s
one example :
In file included from
/usr/src/lustre-2.13.0/libcfs/libcfs/linux/linux-wait.c:9:0:
/usr/src/lustre-2.13.0/libcfs/include/libcfs/linux/linux-wait.h:74:0: error:
"___wait_var_event" redefined [-Werror]
#define ___wait_var_event(var, condition, state, exclusive, ret, cmd) \
In file included from
/usr/src/lustre-2.13.0/libcfs/include/libcfs/linux/linux-wait.h:11:0,
from /usr/src/lustre-2.13.0/libcfs/libcfs/linux/linux-wait.c:9:
include/linux/wait_bit.h:242:0: note: this is the location of the previous
definition
#define ___wait_var_event(var, condition, state, exclusive, ret, cmd) \
In file included from
/usr/src/lustre-2.13.0/libcfs/libcfs/linux/linux-wait.c:9:0:
/usr/src/lustre-2.13.0/libcfs/include/libcfs/linux/linux-wait.h:126:0: error:
"__wait_var_event_timeout" redefined [-Werror]
#define __wait_var_event_timeout(var, condition, timeout) \
In file included from
/usr/src/lustre-2.13.0/libcfs/include/libcfs/linux/linux-wait.h:11:0,
from /usr/src/lustre-2.13.0/libcfs/libcfs/linux/linux-wait.c:9:
include/linux/wait_bit.h:294:0: note: this is the location of the previous
definition
#define __wait_var_event_timeout(var, condition, timeout) \
In file included from
/usr/src/lustre-2.13.0/libcfs/libcfs/linux/linux-wait.c:9:0:
/usr/src/lustre-2.13.0/libcfs/include/libcfs/linux/linux-wait.h:131:0: error:
"wait_var_event_timeout" redefined [-Werror]
#define wait_var_event_timeout(var, condition, timeout) \
In file included from
/usr/src/lustre-2.13.0/libcfs/include/libcfs/linux/linux-wait.h:11:0,
from /usr/src/lustre-2.13.0/libcfs/libcfs/linux/linux-wait.c:9:
include/linux/wait_bit.h:299:0: note: this is the location of the previous
definition
#define wait_var_event_timeout(var, condition, timeout) \
cc1: error: unrecognized command line option ‘-Wno-stringop-truncation’
[-Werror]
cc1: all warnings being treated as errors
make[5]: *** [scripts/Makefile.build:281:
/usr/src/lustre-2.13.0/libcfs/libcfs/linux/linux-wait.o] Error 1
make[5]: *** Waiting for unfinished jobs....
Here’s another example:
/usr/src/lustre-2.13.0/lustre/llite/xattr.c:38:10: fatal error:
linux/selinux.h: No such file or directory
#include <linux/selinux.h>
^~~~~~~~~~~~~~~~~
Andrew Tauferner
_______________________________________________
lustre-discuss mailing list
[email protected]
http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org