enable_getsepol="no"
AC_MSG_WARN([
-No openssk-devel headers found, unable to build l_getsepol and SELinux status checking
+No openssl-devel headers found, unable to build l_getsepol and SELinux status checking
])
])
AC_MSG_RESULT([$enable_getsepol])
]) # LC_OPENSSL_GETSEPOL
+# LC_HAVE_LIBAIO
+AC_DEFUN([LC_HAVE_LIBAIO], [
+ AC_CHECK_HEADER([libaio.h],
+ enable_libaio="yes",
+ AC_MSG_WARN([libaio is not installed in the system]))
+]) # LC_HAVE_LIBAIO
+
AC_DEFUN([LC_HAVE_PROJECT_QUOTA], [
LB_CHECK_COMPILE([if get_projid exists],
get_projid, [
]) # LC_FOP_ITERATE_SHARED
#
+# LC_EXPORT_DEFAULT_FILE_SPLICE_READ
+#
+# 4.8-rc8 commit 82c156f853840645604acd7c2cebcb75ed1b6652 switched
+# generic_file_splice_read() to using ->read_iter. We can test this
+# change since default_file_splice_read() is no longer exported.
+#
+AC_DEFUN([LC_EXPORT_DEFAULT_FILE_SPLICE_READ], [
+LB_CHECK_EXPORT([default_file_splice_read], [fs/splice.c],
+ [AC_DEFINE(HAVE_DEFAULT_FILE_SPLICE_READ_EXPORT, 1,
+ [default_file_splice_read is exported])])
+]) # LC_EXPORT_DEFAULT_FILE_SPLCE_READ
+
+#
# LC_HAVE_POSIX_ACL_VALID_USER_NS
#
# 4.8 posix_acl_valid takes struct user_namespace
]) # LC_VM_FAULT_T
#
+# LC_VM_FAULT_RETRY
+#
+# kernel 4.17 commit 3d3539018d2cbd12e5af4a132636ee7fd8d43ef0
+# mm: VM_FAULT_RETRY is defined in enum vm_fault_reason
+#
+AC_DEFUN([LC_VM_FAULT_RETRY], [
+LB_CHECK_COMPILE([if VM_FAULT_RETRY is defined],
+VM_FAULT_RETRY, [
+ #include <linux/mm.h>
+],[
+ #ifndef VM_FAULT_RETRY
+ vm_fault_t x;
+ x = VM_FAULT_RETRY;
+ #endif
+],[
+ AC_DEFINE(HAVE_VM_FAULT_RETRY, 1,
+ [if VM_FAULT_RETRY is defined])
+])
+]) # LC_VM_FAULT_RETRY
+
+#
# LC_INODE_TIMESPEC64
#
# kernel 4.17-rc7 commit 8efd6894ff089adeeac7cb9f32125b85d963d1bc
# When inode times are timespec64 stop using the deprecated
# time interfaces.
#
+# kernel v5.5-rc1-6-gba70609d5ec6 ba70609d5ec664a8f36ba1c857fcd97a478adf79
+# fs: Delete timespec64_trunc()
+#
AC_DEFUN([LC_INODE_TIMESPEC64], [
tmp_flags="$EXTRA_KCFLAGS"
EXTRA_KCFLAGS="-Werror"
#include <linux/fs.h>
],[
struct inode *inode = NULL;
- struct timespec64 ts = {};
+ struct timespec64 ts = {0, 1};
- inode->i_atime = timespec64_trunc(ts, 1);
+ inode->i_atime = ts;
(void)inode;
],[
AC_DEFINE(HAVE_INODE_TIMESPEC64, 1,
],[
fscrypt_ioctl_get_policy_ex(NULL, NULL);
],[
- has_fscrypt_support="yes"
+ dnl When Lustre supports file name encryption, restore "yes" value
+ dnl for has_fscrypt_support and remove warning message.
+ has_fscrypt_support="no"
+ AC_MSG_WARN([
+This version of Lustre lacks file name encryption support,
+so it cannot make use of in-kernel fscrypt.
+Will use embedded llcrypt if possible.])
])
]) # LC_FSCRYPT_SUPPORT
LC_FOP_ITERATE_SHARED
# 4.8
+ LC_EXPORT_DEFAULT_FILE_SPLICE_READ
LC_HAVE_POSIX_ACL_VALID_USER_NS
LC_D_COMPARE_4ARGS
LC_FULL_NAME_HASH_3ARGS
# 4.17
LC_VM_FAULT_T
+ LC_VM_FAULT_RETRY
LC_I_PAGES
# 4.18
AS_IF([test "x$with_bash_completion_dir" = "xyes"], [
BASH_COMPLETION_DIR="`pkg-config --variable=completionsdir bash-completion`"
AS_IF([test "x$BASH_COMPLETION_DIR" = "x"], [
- [BASH_COMPLETION_DIR="$datadir/bash-completion/completions"]
+ [BASH_COMPLETION_DIR="/usr/share/bash-completion/completions"]
])
], [
BASH_COMPLETION_DIR="$with_bash_completion_dir"
AM_CONDITIONAL(SELINUX, test "$SELINUX" = "-lselinux")
AM_CONDITIONAL(GETSEPOL, test x$enable_getsepol = xyes)
AM_CONDITIONAL(LLCRYPT, test x$enable_llcrypt = xyes)
+AM_CONDITIONAL(LIBAIO, test x$enable_libaio = xyes)
]) # LC_CONDITIONALS
#
lustre/include/Makefile
lustre/include/lustre/Makefile
lustre/include/uapi/linux/lustre/Makefile
+lustre/kernel_patches/targets/4.18-rhel8.2.target
lustre/kernel_patches/targets/4.18-rhel8.1.target
lustre/kernel_patches/targets/4.18-rhel8.target
+lustre/kernel_patches/targets/3.10-rhel7.9.target
lustre/kernel_patches/targets/3.10-rhel7.8.target
lustre/kernel_patches/targets/3.10-rhel7.7.target
lustre/kernel_patches/targets/3.10-rhel7.6.target
lustre/kernel_patches/targets/4.14-rhel7.5.target
lustre/kernel_patches/targets/4.14-rhel7.6.target
lustre/kernel_patches/targets/4.12-sles12sp4.target
+lustre/kernel_patches/targets/4.12-sles12sp5.target
lustre/kernel_patches/targets/4.12-sles15sp1.target
lustre/kernel_patches/targets/3.x-fc18.target
lustre/ldlm/Makefile