]>
Commit | Line | Data |
---|---|---|
650383f2 GN |
1 | dnl # |
2 | dnl # 4.6 API for compile-time stack validation | |
3 | dnl # | |
4 | AC_DEFUN([ZFS_AC_KERNEL_OBJTOOL], [ | |
5 | AC_MSG_CHECKING([for compile-time stack validation (objtool)]) | |
6 | ZFS_LINUX_TRY_COMPILE([ | |
7 | #undef __ASSEMBLY__ | |
8 | #include <asm/frame.h> | |
9 | ],[ | |
10 | #if !defined(FRAME_BEGIN) | |
11 | CTASSERT(1); | |
12 | #endif | |
13 | ],[ | |
14 | AC_MSG_RESULT(yes) | |
c28a6773 BB |
15 | AC_DEFINE(HAVE_KERNEL_OBJTOOL, 1, |
16 | [kernel does stack verification]) | |
17 | ||
18 | ZFS_AC_KERNEL_STACK_FRAME_NON_STANDARD | |
19 | ],[ | |
20 | AC_MSG_RESULT(no) | |
21 | ]) | |
22 | ]) | |
23 | ||
24 | dnl # | |
25 | dnl # 4.6 API added STACK_FRAME_NON_STANDARD macro | |
26 | dnl # | |
27 | AC_DEFUN([ZFS_AC_KERNEL_STACK_FRAME_NON_STANDARD], [ | |
28 | AC_MSG_CHECKING([whether STACK_FRAME_NON_STANDARD is defined]) | |
29 | ZFS_LINUX_TRY_COMPILE([ | |
30 | #include <linux/frame.h> | |
31 | ],[ | |
32 | #if !defined(STACK_FRAME_NON_STANDARD) | |
33 | CTASSERT(1); | |
34 | #endif | |
35 | ],[ | |
36 | AC_MSG_RESULT(yes) | |
37 | AC_DEFINE(HAVE_STACK_FRAME_NON_STANDARD, 1, | |
38 | [STACK_FRAME_NON_STANDARD is defined]) | |
650383f2 GN |
39 | ],[ |
40 | AC_MSG_RESULT(no) | |
41 | ]) | |
42 | ]) |