Linux 3.3 compat, sops->show_options()
authorBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 2 Feb 2012 19:55:48 +0000 (11:55 -0800)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 3 Feb 2012 18:02:01 +0000 (10:02 -0800)
The second argument of sops->show_options() was changed from a
'struct vfsmount *' to a 'struct dentry *'.  Add an autoconf check
to detect the API change and then conditionally define the expected
interface.  In either case we are only interested in the zfs_sb_t.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #549

59 files changed:
Makefile.in
cmd/Makefile.in
cmd/mount_zfs/Makefile.in
cmd/sas_switch_id/Makefile.in
cmd/zdb/Makefile.in
cmd/zfs/Makefile.in
cmd/zinject/Makefile.in
cmd/zpios/Makefile.in
cmd/zpool/Makefile.in
cmd/zpool_id/Makefile.in
cmd/zpool_layout/Makefile.in
cmd/ztest/Makefile.in
cmd/zvol_id/Makefile.in
config/kernel-show-options.m4 [new file with mode: 0644]
config/kernel.m4
configure
dracut/90zfs/Makefile.in
dracut/Makefile.in
etc/Makefile.in
etc/init.d/Makefile.in
etc/zfs/Makefile.in
include/Makefile.in
include/linux/Makefile.in
include/sys/Makefile.in
include/sys/fm/Makefile.in
include/sys/fm/fs/Makefile.in
include/sys/fs/Makefile.in
lib/Makefile.in
lib/libavl/Makefile.in
lib/libefi/Makefile.in
lib/libnvpair/Makefile.in
lib/libshare/Makefile.in
lib/libspl/Makefile.in
lib/libspl/asm-generic/Makefile.in
lib/libspl/asm-i386/Makefile.in
lib/libspl/asm-x86_64/Makefile.in
lib/libspl/include/Makefile.in
lib/libspl/include/ia32/Makefile.in
lib/libspl/include/ia32/sys/Makefile.in
lib/libspl/include/rpc/Makefile.in
lib/libspl/include/sys/Makefile.in
lib/libspl/include/sys/dktp/Makefile.in
lib/libspl/include/sys/sysevent/Makefile.in
lib/libspl/include/util/Makefile.in
lib/libunicode/Makefile.in
lib/libuutil/Makefile.in
lib/libzfs/Makefile.in
lib/libzpool/Makefile.in
man/Makefile.in
man/man8/Makefile.in
module/zfs/zpl_super.c
scripts/Makefile.in
scripts/zpios-profile/Makefile.in
scripts/zpios-test/Makefile.in
scripts/zpool-config/Makefile.in
scripts/zpool-layout/Makefile.in
udev/Makefile.in
udev/rules.d/Makefile.in
zfs_config.h.in

index 680c6ba..8b28ec0 100644 (file)
@@ -92,6 +92,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index eb86e27..c57b7d4 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index ccb4cbc..1ed8e1b 100644 (file)
@@ -72,6 +72,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 889da17..ebe9fb0 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 534e863..eb3d70f 100644 (file)
@@ -72,6 +72,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index a5e9d7a..3e8b260 100644 (file)
@@ -72,6 +72,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index a7cc399..d8a8d6e 100644 (file)
@@ -72,6 +72,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index c0a84df..7103c01 100644 (file)
@@ -72,6 +72,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index b78dcd0..2d025b6 100644 (file)
@@ -72,6 +72,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 29f83a3..509d917 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 514e88f..9ff60f0 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 6adc111..fb89791 100644 (file)
@@ -72,6 +72,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index d657c80..83fc24f 100644 (file)
@@ -72,6 +72,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
diff --git a/config/kernel-show-options.m4 b/config/kernel-show-options.m4
new file mode 100644 (file)
index 0000000..1bddb0a
--- /dev/null
@@ -0,0 +1,21 @@
+dnl #
+dnl # Linux 3.3 API
+dnl #
+AC_DEFUN([ZFS_AC_KERNEL_SHOW_OPTIONS], [
+       AC_MSG_CHECKING([whether sops->show_options() wants dentry])
+
+       ZFS_LINUX_TRY_COMPILE([
+               #include <linux/fs.h>
+       ],[
+               int (*show_options) (struct seq_file *, struct dentry *) = NULL;
+               struct super_operations sops __attribute__ ((unused));
+
+               sops.show_options = show_options;
+       ],[
+               AC_MSG_RESULT([yes])
+               AC_DEFINE(HAVE_SHOW_OPTIONS_WITH_DENTRY, 1,
+                       [sops->show_options() with dentry])
+       ],[
+               AC_MSG_RESULT([no])
+       ])
+])
index b986fe4..10a2cdb 100644 (file)
@@ -32,6 +32,7 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [
        ZFS_AC_KERNEL_CONST_XATTR_HANDLER
        ZFS_AC_KERNEL_XATTR_HANDLER_GET
        ZFS_AC_KERNEL_XATTR_HANDLER_SET
+       ZFS_AC_KERNEL_SHOW_OPTIONS
        ZFS_AC_KERNEL_FSYNC
        ZFS_AC_KERNEL_EVICT_INODE
        ZFS_AC_KERNEL_NR_CACHED_OBJECTS
index f51e79e..e5004b5 100755 (executable)
--- a/configure
+++ b/configure
 
 
 
+       { $as_echo "$as_me:$LINENO: checking whether sops->show_options() wants dentry" >&5
+$as_echo_n "checking whether sops->show_options() wants dentry... " >&6; }
+
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+
+               #include <linux/fs.h>
+
+int
+main (void)
+{
+
+               int (*show_options) (struct seq_file *, struct dentry *) = NULL;
+               struct super_operations sops __attribute__ ((unused));
+
+               sops.show_options = show_options;
+
+  ;
+  return 0;
+}
+
+_ACEOF
+
+
+       rm -Rf build && mkdir -p build
+       echo "obj-m := conftest.o" >build/Makefile
+       if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+               { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SHOW_OPTIONS_WITH_DENTRY 1
+_ACEOF
+
+
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+               { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+       rm -Rf build
+
+
+
+
        { $as_echo "$as_me:$LINENO: checking whether fops->fsync() wants" >&5
 $as_echo_n "checking whether fops->fsync() wants... " >&6; }
 
 
 
 
+       { $as_echo "$as_me:$LINENO: checking whether sops->show_options() wants dentry" >&5
+$as_echo_n "checking whether sops->show_options() wants dentry... " >&6; }
+
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+
+               #include <linux/fs.h>
+
+int
+main (void)
+{
+
+               int (*show_options) (struct seq_file *, struct dentry *) = NULL;
+               struct super_operations sops __attribute__ ((unused));
+
+               sops.show_options = show_options;
+
+  ;
+  return 0;
+}
+
+_ACEOF
+
+
+       rm -Rf build && mkdir -p build
+       echo "obj-m := conftest.o" >build/Makefile
+       if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+
+               { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SHOW_OPTIONS_WITH_DENTRY 1
+_ACEOF
+
+
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+               { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+       rm -Rf build
+
+
+
+
        { $as_echo "$as_me:$LINENO: checking whether fops->fsync() wants" >&5
 $as_echo_n "checking whether fops->fsync() wants... " >&6; }
 
index ca1d860..c2dbb20 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index f385985..098321a 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 481d0cd..f3c4db4 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index f4d0854..0f73354 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index b421d59..1773e37 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index ec15bcf..f079cde 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 0d6d17e..a50f24d 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 2189211..1404894 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index fa7966a..889bab1 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index c9048db..0d7f619 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index dbd54a3..cad07ac 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 3cdebca..c33683d 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 2bae37e..7dc892e 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 8946cc1..c8417cd 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 5162c4d..8fb993e 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 706d004..665f059 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 4bfac4e..dbfffab 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index cae5d56..ba6db6d 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 652782e..92a12c5 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index ad6c870..227f87b 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 419041a..ed4b369 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index c0418ee..148f2bf 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 86b08fd..5d6d54d 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 92529ae..9614d17 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 09e1ec9..058d095 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 84961af..f758147 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 5d6a93d..217582b 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 068a2f5..8c1f290 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index c2c81ad..3ee6bb9 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 0ffdc00..2134294 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index d524a37..78bc72c 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 126d9c4..8f7d10d 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 1ad3c35..b06cb37 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 86e691d..debc9e5 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 3abb26a..0e6e936 100644 (file)
@@ -139,21 +139,31 @@ zpl_remount_fs(struct super_block *sb, int *flags, char *data)
        return (error);
 }
 
+/*
+ * The Linux VFS automatically handles the following flags:
+ * MNT_NOSUID, MNT_NODEV, MNT_NOEXEC, MNT_NOATIME, MNT_READONLY
+ */
+#ifdef HAVE_SHOW_OPTIONS_WITH_DENTRY
 static int
-zpl_show_options(struct seq_file *seq, struct vfsmount *vfsp)
+zpl_show_options(struct seq_file *seq, struct dentry *root)
 {
-       struct super_block *sb = vfsp->mnt_sb;
-       zfs_sb_t *zsb = sb->s_fs_info;
+       zfs_sb_t *zsb = root->d_sb->s_fs_info;
+
+       seq_printf(seq, ",%s", zsb->z_flags & ZSB_XATTR ? "xattr" : "noxattr");
 
-       /*
-        * The Linux VFS automatically handles the following flags:
-        * MNT_NOSUID, MNT_NODEV, MNT_NOEXEC, MNT_NOATIME, MNT_READONLY
-        */
+       return (0);
+}
+#else
+static int
+zpl_show_options(struct seq_file *seq, struct vfsmount *vfsp)
+{
+       zfs_sb_t *zsb = vfsp->mnt_sb->s_fs_info;
 
        seq_printf(seq, ",%s", zsb->z_flags & ZSB_XATTR ? "xattr" : "noxattr");
 
        return (0);
 }
+#endif /* HAVE_SHOW_OPTIONS_WITH_DENTRY */
 
 static int
 zpl_fill_super(struct super_block *sb, void *data, int silent)
index 4fdc85b..4e61705 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 3390621..6acead7 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 1adbef8..2a814d9 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index c78e796..8c3dc4e 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 59034e0..fc4c275 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 6232f65..1884df2 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index f9a72cf..57f406f 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-rq-is_sync.m4 \
        $(top_srcdir)/config/kernel-security-inode-init.m4 \
        $(top_srcdir)/config/kernel-set-nlink.m4 \
+       $(top_srcdir)/config/kernel-show-options.m4 \
        $(top_srcdir)/config/kernel-shrink.m4 \
        $(top_srcdir)/config/kernel-truncate-setsize.m4 \
        $(top_srcdir)/config/kernel-xattr-handler.m4 \
index 4eee892..f64a302 100644 (file)
 /* set_nlink() is available */
 #undef HAVE_SET_NLINK
 
+/* sops->show_options() with dentry */
+#undef HAVE_SHOW_OPTIONS_WITH_DENTRY
+
 /* struct super_block has s_shrink */
 #undef HAVE_SHRINK