]> git.proxmox.com Git - mirror_zfs.git/blob - config/kernel-mknod.m4
Linux 6.5 compat: disk_check_media_change() was added
[mirror_zfs.git] / config / kernel-mknod.m4
1 AC_DEFUN([ZFS_AC_KERNEL_SRC_MKNOD], [
2 dnl #
3 dnl # 6.3 API change
4 dnl # The first arg is now struct mnt_idmap*
5 dnl #
6 ZFS_LINUX_TEST_SRC([mknod_mnt_idmap], [
7 #include <linux/fs.h>
8 #include <linux/sched.h>
9
10 int tmp_mknod(struct mnt_idmap *idmap,
11 struct inode *inode ,struct dentry *dentry,
12 umode_t u, dev_t d) { return 0; }
13
14 static const struct inode_operations
15 iops __attribute__ ((unused)) = {
16 .mknod = tmp_mknod,
17 };
18 ],[])
19
20 dnl #
21 dnl # 5.12 API change that added the struct user_namespace* arg
22 dnl # to the front of this function type's arg list.
23 dnl #
24 ZFS_LINUX_TEST_SRC([mknod_userns], [
25 #include <linux/fs.h>
26 #include <linux/sched.h>
27
28 int tmp_mknod(struct user_namespace *userns,
29 struct inode *inode ,struct dentry *dentry,
30 umode_t u, dev_t d) { return 0; }
31
32 static const struct inode_operations
33 iops __attribute__ ((unused)) = {
34 .mknod = tmp_mknod,
35 };
36 ],[])
37 ])
38
39 AC_DEFUN([ZFS_AC_KERNEL_MKNOD], [
40 AC_MSG_CHECKING([whether iops->mknod() takes struct mnt_idmap*])
41 ZFS_LINUX_TEST_RESULT([mknod_mnt_idmap], [
42 AC_MSG_RESULT(yes)
43 AC_DEFINE(HAVE_IOPS_MKNOD_IDMAP, 1,
44 [iops->mknod() takes struct mnt_idmap*])
45 ],[
46 AC_MSG_RESULT(no)
47 AC_MSG_CHECKING([whether iops->mknod() takes struct user_namespace*])
48 ZFS_LINUX_TEST_RESULT([mknod_userns], [
49 AC_MSG_RESULT(yes)
50 AC_DEFINE(HAVE_IOPS_MKNOD_USERNS, 1,
51 [iops->mknod() takes struct user_namespace*])
52 ],[
53 AC_MSG_RESULT(no)
54 ])
55 ])
56 ])