X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=libcfs%2Fautoconf%2Flustre-libcfs.m4;h=529b534f8bd535a9292dabaee553249f177d6e2e;hb=3e5faa441266cd8dc2ee54ae140ad0129b4affa0;hp=b42c9a7fb71828e526bd7712f007809077892630;hpb=2d2dac3ae77a3cbdc505328b6cbf648323a0795c;p=fs%2Flustre-release.git diff --git a/libcfs/autoconf/lustre-libcfs.m4 b/libcfs/autoconf/lustre-libcfs.m4 index b42c9a7..529b534 100644 --- a/libcfs/autoconf/lustre-libcfs.m4 +++ b/libcfs/autoconf/lustre-libcfs.m4 @@ -1045,6 +1045,31 @@ LB_CHECK_EXPORT([save_stack_trace_tsk], [arch/$SUBARCH/kernel/stacktrace.c], ]) # LIBCFS_EXPORT_SAVE_STACK_TRACE_TSK # +# LIBCFS_LOCKDEP_IS_HELD +# +# Kernel v4.15-rc8-106-g08f36ff64234 +# lockdep: Make lockdep checking constant +# +AC_DEFUN([LIBCFS_LOCKDEP_IS_HELD], [ +tmp_flags="$EXTRA_KCFLAGS" +EXTRA_KCFLAGS="-Werror" +LB_CHECK_COMPILE([if 'lockdep_is_held()' uses const argument], +lockdep_is_held, [ + #include +],[ +#ifdef CONFIG_LOCKDEP + const struct spinlock *lock = NULL; + + lockdep_is_held(lock); +#endif +],[],[ + AC_DEFINE(NEED_LOCKDEP_IS_HELD_DISCARD_CONST, 1, + [lockdep_is_held() argument is const]) +]) +EXTRA_KCFLAGS="$tmp_flags" +]) # LIBCFS_LOCKDEP_IS_HELD + +# # LIBCFS_TIMER_SETUP # # Kernel version 4.15 commit e99e88a9d2b067465adaa9c111ada99a041bef9a @@ -1135,12 +1160,12 @@ tmp_flags="$EXTRA_KCFLAGS" EXTRA_KCFLAGS="-Werror" LB_CHECK_COMPILE([if page cache uses Xarray], xarray_support, [ - #include + #include ],[ - radix_tree_exceptional_entry(NULL); + xa_is_value(NULL); ],[ - AC_DEFINE(HAVE_RADIX_TREE_EXCEPTIONAL_ENTRY, 1, - [kernel lacks 'xa_is_value']) + AC_DEFINE(HAVE_XARRAY_SUPPORT, 1, + [kernel Xarray implementation lacks 'xa_is_value']) ]) EXTRA_KCFLAGS="$tmp_flags" ]) # LIBCFS_XARRAY_SUPPORT @@ -1265,17 +1290,27 @@ EXTRA_KCFLAGS="$tmp_flags" ]) # LIBCFS_CACHE_DETAIL_WRITERS # -# LIBCFS_CONFIG_CRYPTO_CRC32 +# LIBCFS_HAVE_NR_UNSTABLE_NFS # -# The kernel must support CONFIG_CRYPTO_CRC32 to RPC checksumming +# kernel v5.8-rc1~201^2~75 +# mm/writeback: discard NR_UNSTABLE_NFS, use NR_WRITEBACK instead # -AC_DEFUN([LIBCFS_CONFIG_CRYPTO_CRC32], [ -LB_CHECK_CONFIG_IM([CRYPTO_CRC32], [], - [AC_MSG_ERROR([ +AC_DEFUN([LIBCFS_HAVE_NR_UNSTABLE_NFS], [ +tmp_flags="$EXTRA_KCFLAGS" +EXTRA_KCFLAGS="-Werror" +LB_CHECK_COMPILE([if NR_UNSTABLE_NFS still in use], +nr_unstable_nfs_exists, [ + #include -Lustre requires that CONFIG_CRYPTO_CRC32 is enabled in your kernel. -])]) -]) # LIBCFS_CONFIG_CRYPTO_CRC32 + int i; +],[ + i = NR_UNSTABLE_NFS; +],[ + AC_DEFINE(HAVE_NR_UNSTABLE_NFS, 1, + [NR_UNSTABLE_NFS is still in use.]) +]) +EXTRA_KCFLAGS="$tmp_flags" +]) # LIBCFS_HAVE_NR_UNSTABLE_NFS AC_DEFUN([LIBCFS_PROG_LINUX_SRC], [] ) AC_DEFUN([LIBCFS_PROG_LINUX_RESULTS], []) @@ -1289,7 +1324,6 @@ AC_DEFUN([LIBCFS_PROG_LINUX], [ AC_MSG_NOTICE([LibCFS kernel checks ==============================================================================]) LIBCFS_CONFIG_PANIC_DUMPLOG -LIBCFS_CONFIG_CRYPTO_CRC32 # 3.11 LIBCFS_KTIME_GET_TS64 @@ -1367,6 +1401,7 @@ LIBCFS_NEW_KERNEL_WRITE LIBCFS_NEW_KERNEL_READ LIBCFS_EXPORT_SAVE_STACK_TRACE_TSK # 4.15 +LIBCFS_LOCKDEP_IS_HELD LIBCFS_TIMER_SETUP # 4.16 LIBCFS_WAIT_VAR_EVENT @@ -1384,6 +1419,7 @@ LIBCFS_GET_REQUEST_KEY_AUTH LIBCFS_LOOKUP_USER_KEY LIBCFS_FORCE_SIG_WITH_TASK LIBCFS_CACHE_DETAIL_WRITERS +LIBCFS_HAVE_NR_UNSTABLE_NFS ]) # LIBCFS_PROG_LINUX #