xref: /freebsd/sys/contrib/openzfs/config/kernel-dentry-operations.m4 (revision 24e4dcf4ba5e9dedcf89efd358ea3e1fe5867020)
1dnl #
2dnl # 2.6.28 API change
3dnl # Added d_obtain_alias() helper function.
4dnl #
5AC_DEFUN([ZFS_AC_KERNEL_SRC_D_OBTAIN_ALIAS], [
6	ZFS_LINUX_TEST_SRC([d_obtain_alias], [
7		#include <linux/dcache.h>
8	], [
9		d_obtain_alias(NULL);
10	])
11])
12
13AC_DEFUN([ZFS_AC_KERNEL_D_OBTAIN_ALIAS], [
14	AC_MSG_CHECKING([whether d_obtain_alias() is available])
15	ZFS_LINUX_TEST_RESULT_SYMBOL([d_obtain_alias],
16	    [d_obtain_alias], [fs/dcache.c], [
17		AC_MSG_RESULT(yes)
18	], [
19		ZFS_LINUX_TEST_ERROR([d_obtain_alias()])
20	])
21])
22
23dnl #
24dnl # 2.6.38 API change
25dnl # Added d_set_d_op() helper function.
26dnl #
27dnl # 6.17 API change
28dnl # d_set_d_op() removed. No direct replacement.
29dnl #
30AC_DEFUN([ZFS_AC_KERNEL_SRC_D_SET_D_OP], [
31	ZFS_LINUX_TEST_SRC([d_set_d_op], [
32		#include <linux/dcache.h>
33	], [
34		d_set_d_op(NULL, NULL);
35	])
36])
37
38AC_DEFUN([ZFS_AC_KERNEL_D_SET_D_OP], [
39	AC_MSG_CHECKING([whether d_set_d_op() is available])
40	ZFS_LINUX_TEST_RESULT([d_set_d_op], [
41		AC_MSG_RESULT(yes)
42		AC_DEFINE(HAVE_D_SET_D_OP, 1,
43		    [Define if d_set_d_op() is available])
44	], [
45		AC_MSG_RESULT(no)
46	])
47])
48
49dnl #
50dnl # 6.17 API change
51dnl # sb->s_d_op removed; set_default_d_op(sb, dop) added
52dnl #
53AC_DEFUN([ZFS_AC_KERNEL_SRC_SET_DEFAULT_D_OP], [
54	ZFS_LINUX_TEST_SRC([set_default_d_op], [
55		#include <linux/dcache.h>
56	], [
57		set_default_d_op(NULL, NULL);
58	])
59])
60
61AC_DEFUN([ZFS_AC_KERNEL_SET_DEFAULT_D_OP], [
62	AC_MSG_CHECKING([whether set_default_d_op() is available])
63	ZFS_LINUX_TEST_RESULT([set_default_d_op], [
64		AC_MSG_RESULT(yes)
65		AC_DEFINE(HAVE_SET_DEFAULT_D_OP, 1,
66		    [Define if set_default_d_op() is available])
67	], [
68		AC_MSG_RESULT(no)
69	])
70])
71
72AC_DEFUN([ZFS_AC_KERNEL_SRC_DENTRY], [
73        ZFS_AC_KERNEL_SRC_D_OBTAIN_ALIAS
74        ZFS_AC_KERNEL_SRC_D_SET_D_OP
75        ZFS_AC_KERNEL_SRC_SET_DEFAULT_D_OP
76])
77
78AC_DEFUN([ZFS_AC_KERNEL_DENTRY], [
79        ZFS_AC_KERNEL_D_OBTAIN_ALIAS
80        ZFS_AC_KERNEL_D_SET_D_OP
81        ZFS_AC_KERNEL_SET_DEFAULT_D_OP
82])
83