Hi all, As Lustre 2.10 is supported on Ubuntu 16.04 and SLES12 with both based on the 4.4 kernel. I tried to compile the 2.10.6 client using DKMS on the latest Kernel.org 4.4 LTS (4.4-174).
But it is failing with what looks like differences in the API (full output attached). make[3]: Entering directory `/usr/src/kernels/4.4.174-1.el6.elrepo.x86_64' LD /var/lib/dkms/lustre-client/2.10.6/build/built-in.o LD /var/lib/dkms/lustre-client/2.10.6/build/libcfs/built-in.o LD /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/built-in.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-tracefile.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-debug.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-prim.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-cpu.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.o cc1: warnings being treated as errors /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.c: In function ‘cfs_access_process_vm’: /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.c:157: error: passing argument 6 of ‘get_user_pages’ makes pointer from integer without a cast include/linux/mm.h:1200: note: expected ‘struct page **’ but argument is of type ‘int’ /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.c:157: error: passing argument 7 of ‘get_user_pages’ from incompatible pointer type include/linux/mm.h:1200: note: expected ‘struct vm_area_struct **’ but argument is of type ‘struct page **’ /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.c:157: error: too many arguments to function ‘get_user_pages’ make[6]: *** [/var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.o] Error 1 make[5]: *** [/var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs] Error 2 make[4]: *** [/var/lib/dkms/lustre-client/2.10.6/build/libcfs] Error 2 make[3]: *** [_module_/var/lib/dkms/lustre-client/2.10.6/build] Error 2 make[3]: Leaving directory `/usr/src/kernels/4.4.174-1.el6.elrepo.x86_64' make[2]: *** [modules] Error 2 make[2]: Leaving directory `/var/lib/dkms/lustre-client/2.10.6/build' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/lib/dkms/lustre-client/2.10.6/build' make: *** [all] Error 2 Is there a way to get that to work ? Full disclosure: I need to upgrade the kernel of some Centos6 boxes due to a bug (not Lustre related), but can't upgrade the OS for *reasons*. Best regards, Louis
DKMS make.log for lustre-client-2.10.6 for kernel 4.4.174-1.el6.elrepo.x86_64 (x86_64) Mon Feb 11 17:54:21 GMT 2019 make all-recursive make[1]: Entering directory `/var/lib/dkms/lustre-client/2.10.6/build' Making all in . make[2]: Entering directory `/var/lib/dkms/lustre-client/2.10.6/build' make LDFLAGS= CC="gcc" -C /usr/src/kernels/4.4.174-1.el6.elrepo.x86_64 \ -f /var/lib/dkms/lustre-client/2.10.6/build/build/Makefile LUSTRE_LINUX_CONFIG=/usr/src/kernels/4.4.174-1.el6.elrepo.x86_64/.config \ LINUXINCLUDE='-I$(srctree)/arch/$(SRCARCH)/include -Iarch/$(SRCARCH)/include/generated -Iinclude $(if $(KBUILD_SRC),-Iinclude2 -I$(srctree)/include) -I$(srctree)/arch/$(SRCARCH)/include/uapi -Iarch/$(SRCARCH)/include/generated/uapi -I$(srctree)/include/uapi -Iinclude/generated/uapi -include /usr/src/kernels/4.4.174-1.el6.elrepo.x86_64/include/linux/kconfig.h' \ M=/var/lib/dkms/lustre-client/2.10.6/build -o tmp_include_depends -o scripts -o \ include/config/MARKER modules make[3]: Entering directory `/usr/src/kernels/4.4.174-1.el6.elrepo.x86_64' LD /var/lib/dkms/lustre-client/2.10.6/build/built-in.o LD /var/lib/dkms/lustre-client/2.10.6/build/libcfs/built-in.o LD /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/built-in.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-tracefile.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-debug.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-prim.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-cpu.o CC [M] /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.o cc1: warnings being treated as errors /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.c: In function âcfs_access_process_vmâ: /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.c:157: error: passing argument 6 of âget_user_pagesâ makes pointer from integer without a cast include/linux/mm.h:1200: note: expected âstruct page **â but argument is of type âintâ /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.c:157: error: passing argument 7 of âget_user_pagesâ from incompatible pointer type include/linux/mm.h:1200: note: expected âstruct vm_area_struct **â but argument is of type âstruct page **â /var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.c:157: error: too many arguments to function âget_user_pagesâ make[6]: *** [/var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs/linux/linux-curproc.o] Error 1 make[5]: *** [/var/lib/dkms/lustre-client/2.10.6/build/libcfs/libcfs] Error 2 make[4]: *** [/var/lib/dkms/lustre-client/2.10.6/build/libcfs] Error 2 make[3]: *** [_module_/var/lib/dkms/lustre-client/2.10.6/build] Error 2 make[3]: Leaving directory `/usr/src/kernels/4.4.174-1.el6.elrepo.x86_64' make[2]: *** [modules] Error 2 make[2]: Leaving directory `/var/lib/dkms/lustre-client/2.10.6/build' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/lib/dkms/lustre-client/2.10.6/build' make: *** [all] Error 2
_______________________________________________ lustre-discuss mailing list [email protected] http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org
