]>
Commit | Line | Data |
---|---|---|
837ca015 CIK |
1 | dnl # |
2 | dnl # 2.6.32 - 2.6.33, bdi_setup_and_register() is not exported. | |
3 | dnl # 2.6.34 - 3.19, bdi_setup_and_register() takes 3 arguments. | |
4 | dnl # 4.0 - 4.11, bdi_setup_and_register() takes 2 arguments. | |
5 | dnl # 4.12 - x.y, super_setup_bdi_name() new interface. | |
6 | dnl # | |
7 | AC_DEFUN([ZFS_AC_KERNEL_BDI], [ | |
8 | AC_MSG_CHECKING([whether super_setup_bdi_name() exists]) | |
9 | ZFS_LINUX_TRY_COMPILE_SYMBOL([ | |
10 | #include <linux/fs.h> | |
11 | struct super_block sb; | |
12 | ], [ | |
13 | char *name = "bdi"; | |
86e3c28a | 14 | atomic_long_t zfs_bdi_seq; |
837ca015 | 15 | int error __attribute__((unused)) = |
86e3c28a | 16 | super_setup_bdi_name(&sb, "%.28s-%ld", name, atomic_long_inc_return(&zfs_bdi_seq)); |
837ca015 CIK |
17 | ], [super_setup_bdi_name], [fs/super.c], [ |
18 | AC_MSG_RESULT(yes) | |
19 | AC_DEFINE(HAVE_SUPER_SETUP_BDI_NAME, 1, | |
9784fa9e | 20 | [super_setup_bdi_name() exits]) |
837ca015 CIK |
21 | ], [ |
22 | AC_MSG_RESULT(no) | |
23 | AC_MSG_CHECKING( | |
24 | [whether bdi_setup_and_register() wants 2 args]) | |
25 | ZFS_LINUX_TRY_COMPILE_SYMBOL([ | |
26 | #include <linux/backing-dev.h> | |
27 | struct backing_dev_info bdi; | |
28 | ], [ | |
29 | char *name = "bdi"; | |
30 | int error __attribute__((unused)) = | |
31 | bdi_setup_and_register(&bdi, name); | |
32 | ], [bdi_setup_and_register], [mm/backing-dev.c], [ | |
33 | AC_MSG_RESULT(yes) | |
34 | AC_DEFINE(HAVE_2ARGS_BDI_SETUP_AND_REGISTER, 1, | |
35 | [bdi_setup_and_register() wants 2 args]) | |
36 | ], [ | |
37 | AC_MSG_RESULT(no) | |
38 | AC_MSG_CHECKING( | |
39 | [whether bdi_setup_and_register() wants 3 args]) | |
40 | ZFS_LINUX_TRY_COMPILE_SYMBOL([ | |
41 | #include <linux/backing-dev.h> | |
42 | struct backing_dev_info bdi; | |
43 | ], [ | |
44 | char *name = "bdi"; | |
45 | unsigned int cap = BDI_CAP_MAP_COPY; | |
46 | int error __attribute__((unused)) = | |
47 | bdi_setup_and_register(&bdi, name, cap); | |
48 | ], [bdi_setup_and_register], [mm/backing-dev.c], [ | |
49 | AC_MSG_RESULT(yes) | |
50 | AC_DEFINE(HAVE_3ARGS_BDI_SETUP_AND_REGISTER, 1, | |
51 | [bdi_setup_and_register() wants 3 args]) | |
52 | ], [ | |
53 | AC_MSG_RESULT(no) | |
54 | ]) | |
55 | ]) | |
56 | ]) | |
57 | ]) |