Hi all, I'm attempting to compile openafs from the git repo as described here: https://wiki.openafs.org/devel/HowToBuildOpenAfsRpmPackages/#index3h2
The userland tools compile and install fine, but the DKMS compilation fails. This is on CentOS7, against ELRepo's kernel-ml version 5.19.12 and 6.0.5. These kernels are compiled with Redhat's devtoolset 9 which contains more recent versions of gcc (9.3.1), so that is what is also used when DKMS compiling. I have tried the master tip (1.9.1-1.223.gd38b) and 1.8.9-pre1 tag. The make.log error is: Building in directory: MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP make[2]: Entering directory '/var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP' env EXTRA_CFLAGS="" /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/make_kbuild_makefile.pl MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP openafs.ko /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/config/Makefile.config Makefile.afs Makefile.common ( env EXTRA_CFLAGS="" \ make -C /lib/modules/5.19.12-1.el7.elrepo.x86_64/build M=/var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP modules 2>&1 \ || echo "FAILURE: make exit code $?" ) | tee .makelog make[3]: Entering directory '/usr/src/kernels/5.19.12-1.el7.elrepo.x86_64' CC [M] /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.o In file included from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afsincludes.h:27, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:31, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_vfs.h:78:21: error: field ‘va_atime’ has incomplete type 78 | struct timespec va_atime; | ^~~~~~~~ /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_vfs.h:79:21: error: field ‘va_mtime’ has incomplete type 79 | struct timespec va_mtime; | ^~~~~~~~ /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_vfs.h:80:21: error: field ‘va_ctime’ has incomplete type 80 | struct timespec va_ctime; | ^~~~~~~~ In file included from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afs_osi.h:427, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx_clock.h:46, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx.h:44, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afsincludes.h:29, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:31, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:68:3: error: #error Not sure what to do about rlim (should be in the Linux task struct somewhere....) 68 | # error Not sure what to do about rlim (should be in the Linux task struct somewhere....) | ^~~~~ In file included from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afs_osi.h:427, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx_clock.h:46, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx.h:44, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afsincludes.h:29, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:31, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h: In function ‘osi_GetTime’: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:114:20: error: storage size of ‘now’ isn’t known 114 | struct timeval now; | ^~~ /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:115:5: error: implicit declaration of function ‘do_gettimeofday’; did you mean ‘do_settimeofday64’? [-Werror=implicit-function-declaration] 115 | do_gettimeofday(&now); | ^~~~~~~~~~~~~~~ | do_settimeofday64 /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:114:20: error: unused variable ‘now’ [-Werror=unused-variable] 114 | struct timeval now; | ^~~ /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h: At top level: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:242:29: error: conflicting types for ‘uid_eq’ 242 | static inline unsigned char uid_eq(uid_t a, uid_t b) {return a == b;} | ^~~~~~ In file included from ./include/linux/stat.h:20, from ./include/linux/fcntl.h:5, from ./include/linux/net.h:20, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/sysincludes.h:121, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:30, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: ./include/linux/uidgid.h:61:20: note: previous definition of ‘uid_eq’ was here 61 | static inline bool uid_eq(kuid_t left, kuid_t right) | ^~~~~~ In file included from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afs_osi.h:427, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx_clock.h:46, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx.h:44, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afsincludes.h:29, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:31, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:243:29: error: conflicting types for ‘gid_eq’ 243 | static inline unsigned char gid_eq(gid_t a, gid_t b) {return a == b;} | ^~~~~~ In file included from ./include/linux/stat.h:20, from ./include/linux/fcntl.h:5, from ./include/linux/net.h:20, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/sysincludes.h:121, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:30, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: ./include/linux/uidgid.h:66:20: note: previous definition of ‘gid_eq’ was here 66 | static inline bool gid_eq(kgid_t left, kgid_t right) | ^~~~~~ In file included from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afs_osi.h:427, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx_clock.h:46, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx.h:44, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afsincludes.h:29, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:31, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:244:29: error: conflicting types for ‘uid_lt’ 244 | static inline unsigned char uid_lt(uid_t a, uid_t b) {return a < b;} | ^~~~~~ In file included from ./include/linux/stat.h:20, from ./include/linux/fcntl.h:5, from ./include/linux/net.h:20, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/sysincludes.h:121, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:30, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: ./include/linux/uidgid.h:91:20: note: previous definition of ‘uid_lt’ was here 91 | static inline bool uid_lt(kuid_t left, kuid_t right) | ^~~~~~ In file included from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afs_osi.h:427, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx_clock.h:46, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx.h:44, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afsincludes.h:29, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:31, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:245:29: error: conflicting types for ‘gid_lt’ 245 | static inline unsigned char gid_lt(gid_t a, gid_t b) {return a < b;} | ^~~~~~ In file included from ./include/linux/stat.h:20, from ./include/linux/fcntl.h:5, from ./include/linux/net.h:20, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/sysincludes.h:121, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:30, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: ./include/linux/uidgid.h:96:20: note: previous definition of ‘gid_lt’ was here 96 | static inline bool gid_lt(kgid_t left, kgid_t right) | ^~~~~~ In file included from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afs_osi.h:427, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx_clock.h:46, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx.h:44, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afsincludes.h:29, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:31, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:246: error: "GLOBAL_ROOT_UID" redefined [-Werror] 246 | #define GLOBAL_ROOT_UID ((afs_kuid_t) 0) | In file included from ./include/linux/stat.h:20, from ./include/linux/fcntl.h:5, from ./include/linux/net.h:20, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/sysincludes.h:121, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:30, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: ./include/linux/uidgid.h:55: note: this is the location of the previous definition 55 | #define GLOBAL_ROOT_UID KUIDT_INIT(0) | In file included from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afs_osi.h:427, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx_clock.h:46, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/rx/rx.h:44, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/afsincludes.h:29, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:31, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/LINUX/osi_machdep.h:247: error: "GLOBAL_ROOT_GID" redefined [-Werror] 247 | #define GLOBAL_ROOT_GID ((afs_kgid_t) 0) | In file included from ./include/linux/stat.h:20, from ./include/linux/fcntl.h:5, from ./include/linux/net.h:20, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/afs/sysincludes.h:121, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/crypto/hcrypto/kernel/config.h:30, from /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.c:34: ./include/linux/uidgid.h:56: note: this is the location of the previous definition 56 | #define GLOBAL_ROOT_GID KGIDT_INIT(0) | cc1: all warnings being treated as errors make[4]: *** [scripts/Makefile.build:249: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP/sha256-kernel.o] Error 1 make[3]: *** [Makefile:1846: /var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP] Error 2 make[3]: Leaving directory '/usr/src/kernels/5.19.12-1.el7.elrepo.x86_64' FAILURE: make exit code 2 make[2]: *** [Makefile.afs:282: openafs.ko] Error 1 make[2]: Leaving directory '/var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs/MODLOAD-5.19.12-1.el7.elrepo.x86_64-SP' make[1]: *** [Makefile:187: linux_compdirs] Error 2 make[1]: Leaving directory '/var/lib/dkms/openafs/1.9.1-1.223.gd38b.el7/build/src/libafs' make: *** [Makefile:15: all] Error 2 Note that this kernel is not running when the DKMS compilation is attempted. Thanks! Chad. _______________________________________________ OpenAFS-info mailing list OpenAFS-info@openafs.org https://lists.openafs.org/mailman/listinfo/openafs-info