]> git.proxmox.com Git - mirror_zfs.git/blame - config/kernel-is_owner_or_cap.m4
Revert "Reduce dbuf_find() lock contention"
[mirror_zfs.git] / config / kernel-is_owner_or_cap.m4
CommitLineData
3b4f425a
RY
1dnl #
2dnl # 2.6.39 API change,
3dnl # The is_owner_or_cap() macro was renamed to inode_owner_or_capable(),
4dnl # This is used for permission checks in the xattr and file attribute call
5dnl # paths.
6dnl #
69cbd0a3
AZ
7dnl # 5.12 API change,
8dnl # inode_owner_or_capable() now takes struct user_namespace *
9dnl # to support idmapped mounts
10dnl #
608f8749
BB
11AC_DEFUN([ZFS_AC_KERNEL_SRC_INODE_OWNER_OR_CAPABLE], [
12 ZFS_LINUX_TEST_SRC([inode_owner_or_capable], [
3b4f425a
RY
13 #include <linux/fs.h>
14 ],[
15 struct inode *ip = NULL;
16 (void) inode_owner_or_capable(ip);
608f8749 17 ])
e2a82961
CK
18
19 ZFS_LINUX_TEST_SRC([inode_owner_or_capable_idmapped], [
20 #include <linux/fs.h>
21 ],[
22 struct inode *ip = NULL;
23 (void) inode_owner_or_capable(&init_user_ns, ip);
24 ])
608f8749
BB
25])
26
27AC_DEFUN([ZFS_AC_KERNEL_INODE_OWNER_OR_CAPABLE], [
28 AC_MSG_CHECKING([whether inode_owner_or_capable() exists])
29 ZFS_LINUX_TEST_RESULT([inode_owner_or_capable], [
3b4f425a 30 AC_MSG_RESULT(yes)
e2a82961
CK
31 AC_DEFINE(HAVE_INODE_OWNER_OR_CAPABLE, 1,
32 [inode_owner_or_capable() exists])
33 ], [
34 AC_MSG_RESULT(no)
35
36 AC_MSG_CHECKING(
37 [whether inode_owner_or_capable() takes user_ns])
38 ZFS_LINUX_TEST_RESULT([inode_owner_or_capable_idmapped], [
39 AC_MSG_RESULT(yes)
40 AC_DEFINE(HAVE_INODE_OWNER_OR_CAPABLE_IDMAPPED, 1,
41 [inode_owner_or_capable() takes user_ns])
42 ],[
43 ZFS_LINUX_TEST_ERROR([capability])
44 ])
3b4f425a
RY
45 ])
46])