]> git.proxmox.com Git - mirror_zfs.git/blob - config/kernel-sysfs.m4
Linux 6.3 compat: idmapped mount API changes
[mirror_zfs.git] / config / kernel-sysfs.m4
1 dnl #
2 dnl # Linux 5.2/5.18 API
3 dnl #
4 dnl # In cdb4f26a63c391317e335e6e683a614358e70aeb ("kobject: kobj_type: remove default_attrs")
5 dnl # struct kobj_type.default_attrs
6 dnl # was finally removed in favour of
7 dnl # struct kobj_type.default_groups
8 dnl #
9 dnl # This was added in aa30f47cf666111f6bbfd15f290a27e8a7b9d854 ("kobject: Add support for default attribute groups to kobj_type"),
10 dnl # if both are present (5.2-5.17), we prefer default_groups; they're otherwise equivalent
11 dnl #
12 AC_DEFUN([ZFS_AC_KERNEL_SRC_SYSFS_DEFAULT_GROUPS], [
13 ZFS_LINUX_TEST_SRC([sysfs_default_groups], [
14 #include <linux/kobject.h>
15 ],[
16 struct kobj_type __attribute__ ((unused)) kt = {
17 .default_groups = (const struct attribute_group **)NULL };
18 ])
19 ])
20
21 AC_DEFUN([ZFS_AC_KERNEL_SYSFS_DEFAULT_GROUPS], [
22 AC_MSG_CHECKING([whether struct kobj_type.default_groups exists])
23 ZFS_LINUX_TEST_RESULT([sysfs_default_groups],[
24 AC_MSG_RESULT(yes)
25 AC_DEFINE([HAVE_SYSFS_DEFAULT_GROUPS], 1, [struct kobj_type has default_groups])
26 ],[
27 AC_MSG_RESULT(no)
28 ])
29 ])
30
31 AC_DEFUN([ZFS_AC_KERNEL_SRC_SYSFS], [
32 ZFS_AC_KERNEL_SRC_SYSFS_DEFAULT_GROUPS
33 ])
34
35 AC_DEFUN([ZFS_AC_KERNEL_SYSFS], [
36 ZFS_AC_KERNEL_SYSFS_DEFAULT_GROUPS
37 ])