aboutsummaryrefslogtreecommitdiffstats
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/kernel-mount-nodev.m415
-rw-r--r--config/kernel.m41
2 files changed, 16 insertions, 0 deletions
diff --git a/config/kernel-mount-nodev.m4 b/config/kernel-mount-nodev.m4
new file mode 100644
index 000000000..9229d5b1b
--- /dev/null
+++ b/config/kernel-mount-nodev.m4
@@ -0,0 +1,15 @@
+dnl #
+dnl # 2.6.39 API change
+dnl # The .get_sb callback has been replaced by a .mount callback
+dnl # in the file_system_type structure. When using the new
+dnl # interface the caller must now use the mount_nodev() helper.
+dnl # This updated callback and helper no longer pass the vfsmount.
+dnl #
+AC_DEFUN([ZFS_AC_KERNEL_MOUNT_NODEV], [
+ ZFS_CHECK_SYMBOL_EXPORT(
+ [mount_nodev],
+ [fs/super.c],
+ [AC_DEFINE(HAVE_MOUNT_NODEV, 1,
+ [mount_nodev() is available])],
+ [])
+])
diff --git a/config/kernel.m4 b/config/kernel.m4
index 8c4b06ac4..90dc6c000 100644
--- a/config/kernel.m4
+++ b/config/kernel.m4
@@ -39,6 +39,7 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [
ZFS_AC_KERNEL_CHECK_DISK_SIZE_CHANGE
ZFS_AC_KERNEL_TRUNCATE_SETSIZE
ZFS_AC_KERNEL_6ARGS_SECURITY_INODE_INIT_SECURITY
+ ZFS_AC_KERNEL_MOUNT_NODEV
if test "$LINUX_OBJ" != "$LINUX"; then
KERNELMAKE_PARAMS="$KERNELMAKE_PARAMS O=$LINUX_OBJ"