summaryrefslogtreecommitdiffstats
path: root/config/kernel-objtool.m4
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2017-12-07 10:28:50 -0800
committerGitHub <[email protected]>2017-12-07 10:28:50 -0800
commitc28a67733c68b5540968136a7aca9633146afaf9 (patch)
tree32b640937171299130ba4cef792a8acf400416ec /config/kernel-objtool.m4
parent674b89342e43bd83659285d730b5b6a98f8b4b48 (diff)
Suppress incorrect objtool warnings
Suppress incorrect warnings from versions of objtool which are not aware of x86 EVEX prefix instructions used for AVX512. module/zfs/vdev_raidz_math_avx512bw.o: warning: objtool: <func+offset>: can't find jump dest instruction at .text Reviewed-by: Don Brady <[email protected]> Reviewed-by: George Melikov <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #6928
Diffstat (limited to 'config/kernel-objtool.m4')
-rw-r--r--config/kernel-objtool.m425
1 files changed, 24 insertions, 1 deletions
diff --git a/config/kernel-objtool.m4 b/config/kernel-objtool.m4
index 94e7dda2d..467329b25 100644
--- a/config/kernel-objtool.m4
+++ b/config/kernel-objtool.m4
@@ -12,7 +12,30 @@ AC_DEFUN([ZFS_AC_KERNEL_OBJTOOL], [
#endif
],[
AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_KERNEL_OBJTOOL, 1, [kernel does stack verification])
+ AC_DEFINE(HAVE_KERNEL_OBJTOOL, 1,
+ [kernel does stack verification])
+
+ ZFS_AC_KERNEL_STACK_FRAME_NON_STANDARD
+ ],[
+ AC_MSG_RESULT(no)
+ ])
+])
+
+dnl #
+dnl # 4.6 API added STACK_FRAME_NON_STANDARD macro
+dnl #
+AC_DEFUN([ZFS_AC_KERNEL_STACK_FRAME_NON_STANDARD], [
+ AC_MSG_CHECKING([whether STACK_FRAME_NON_STANDARD is defined])
+ ZFS_LINUX_TRY_COMPILE([
+ #include <linux/frame.h>
+ ],[
+ #if !defined(STACK_FRAME_NON_STANDARD)
+ CTASSERT(1);
+ #endif
+ ],[
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_STACK_FRAME_NON_STANDARD, 1,
+ [STACK_FRAME_NON_STANDARD is defined])
],[
AC_MSG_RESULT(no)
])