]> git.proxmox.com Git - mirror_zfs-debian.git/commitdiff
Set zvol discard_granularity to the volblocksize.
authorEtienne Dechamps <etienne.dechamps@ovh.net>
Wed, 1 Aug 2012 08:29:59 +0000 (10:29 +0200)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 7 Aug 2012 21:55:31 +0000 (14:55 -0700)
Currently, zvols have a discard granularity set to 0, which suggests to
the upper layer that discard requests of arbirarily small size and
alignment can be made efficiently.

In practice however, ZFS does not handle unaligned discard requests
efficiently: indeed, it is unable to free a part of a block. It will
write zeros to the specified range instead, which is both useless and
inefficient (see dnode_free_range).

With this patch, zvol block devices expose volblocksize as their discard
granularity, so the upper layer is aware that it's not supposed to send
discard requests smaller than volblocksize.

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

61 files changed:
Makefile.in
cmd/Makefile.in
cmd/mount_zfs/Makefile.in
cmd/vdev_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-discard-granularity.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/linux/blkdev_compat.h
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/man5/Makefile.in
man/man8/Makefile.in
module/zfs/zvol.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 52946a266d00034ece6132cc74791597899874e6..a8b6a09f0c155fb8cefbe3b759f3f90a2d8fb48a 100644 (file)
@@ -91,6 +91,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index bd03b3558b75af2330c77cae7ff9364f500a3693..3a031e8752339c988d2bd16cce5f2d573c18fc77 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 0a6ca2e09ae6d41d12ec7514dfb212e192c95e6a..b0e80aa200c208a27f181dfa4b651d360fff202f 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 4a8ecfd4a0174af157c6187d74d318062a577e83..56b1ebe775cbe26d60cbfb1168d17be60e1f1550 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 6842334f55c45cda57e9ba4fdada0c487c693311..e55f6adf5484bf38ad926631a7e9fbd764d3ccb7 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 582604b694bc2d4cc9123811cb318d5a3b93277c..bdd2914d978d91f44a7546cf2b16e18ffd456ba5 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 1a8a7837fdeec884cadb33df607d00f31b6b7c58..d229f81dd1ede1d36ccf12d7734c52cf18b50dcd 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 6bfb81c9ea6c05431ce90edc5e5e89dbd12c8580..40db43c30de61f07cb375f752dd5631d6120e812 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 9ac1d2e77c18779b0e9b74ca980b6f414aaf276a..74390c4231c5d2627abe1d60a468a77f2ac67d78 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 67812174f5613bf72aa7230bef49ebbacedaaecc..c4dc586e2c2503debae43fd7c93919cf63f03dff 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index c6a2f0db4ac81e720385927b2c0e34f6c25dfa95..d13c2e6bf82d2207696f0e50c4503dfc0187212d 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 2dbdfd4d7e7f7bdb7c8faa6e3e490d7b0ff20cbd..b4cdc228447ed959918539667869deb09a20d22b 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index d16e5b75cdff8f5294cb428cabfa84b38d092019..acc2433176f36d4bace84308bded0a8672d333c2 100644 (file)
@@ -71,6 +71,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
diff --git a/config/kernel-discard-granularity.m4 b/config/kernel-discard-granularity.m4
new file mode 100644 (file)
index 0000000..2c677c9
--- /dev/null
@@ -0,0 +1,20 @@
+dnl #
+dnl # 2.6.33 API change
+dnl # Discard granularity and alignment restrictions may now be set.
+dnl #
+AC_DEFUN([ZFS_AC_KERNEL_DISCARD_GRANULARITY], [
+       AC_MSG_CHECKING([whether ql->discard_granularity is available])
+       ZFS_LINUX_TRY_COMPILE([
+               #include <linux/blkdev.h>
+       ],[
+               struct queue_limits ql __attribute__ ((unused));
+
+               ql.discard_granularity = 0;
+       ],[
+               AC_MSG_RESULT(yes)
+               AC_DEFINE(HAVE_DISCARD_GRANULARITY, 1,
+                         [ql->discard_granularity is available])
+       ],[
+               AC_MSG_RESULT(no)
+       ])
+])
index a40bb5b6c1d3e92f75e57d1198613f2a11aa994e..260ad84f4f9aeaad4157fe8c0008be49c24b86ca 100644 (file)
@@ -39,6 +39,7 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [
        ZFS_AC_KERNEL_GET_GENDISK
        ZFS_AC_KERNEL_RQ_IS_SYNC
        ZFS_AC_KERNEL_RQ_FOR_EACH_SEGMENT
+       ZFS_AC_KERNEL_DISCARD_GRANULARITY
        ZFS_AC_KERNEL_CONST_XATTR_HANDLER
        ZFS_AC_KERNEL_XATTR_HANDLER_GET
        ZFS_AC_KERNEL_XATTR_HANDLER_SET
index 9b97fb427afa589e077de0f746b4021b9fed596c..313e05137c46f3dbd7ad7900f43390350fd30707 100755 (executable)
--- a/configure
+++ b/configure
 
        EXTRA_KCFLAGS="$tmp_flags"
 
+
+       { $as_echo "$as_me:$LINENO: checking whether ql->discard_granularity is available" >&5
+$as_echo_n "checking whether ql->discard_granularity is available... " >&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/blkdev.h>
+
+int
+main (void)
+{
+
+               struct queue_limits ql __attribute__ ((unused));
+
+               ql.discard_granularity = 0;
+
+  ;
+  return 0;
+}
+
+_ACEOF
+
+
+       rm -Rf build && mkdir -p build && touch build/conftest.mod.c
+       echo "obj-m := conftest.o" >build/Makefile
+       modpost_flag=''
+       test "x$enable_linux_builtin" = xyes && modpost_flag='modpost=true' # fake modpost stage
+       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 $modpost_flag'
+  { (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_DISCARD_GRANULARITY 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 super_block uses const struct xattr_hander" >&5
 $as_echo_n "checking whether super_block uses const struct xattr_hander... " >&6; }
 
 
        EXTRA_KCFLAGS="$tmp_flags"
 
+
+       { $as_echo "$as_me:$LINENO: checking whether ql->discard_granularity is available" >&5
+$as_echo_n "checking whether ql->discard_granularity is available... " >&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/blkdev.h>
+
+int
+main (void)
+{
+
+               struct queue_limits ql __attribute__ ((unused));
+
+               ql.discard_granularity = 0;
+
+  ;
+  return 0;
+}
+
+_ACEOF
+
+
+       rm -Rf build && mkdir -p build && touch build/conftest.mod.c
+       echo "obj-m := conftest.o" >build/Makefile
+       modpost_flag=''
+       test "x$enable_linux_builtin" = xyes && modpost_flag='modpost=true' # fake modpost stage
+       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 $modpost_flag'
+  { (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_DISCARD_GRANULARITY 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 super_block uses const struct xattr_hander" >&5
 $as_echo_n "checking whether super_block uses const struct xattr_hander... " >&6; }
 
index 956e458606a7969f74715b8931860e5a36d63fa3..60fa58509de3300baffd0aae48a9ae9cf73a7b5c 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 0e98a6ca977b9bc8bc9a5a999822f4ebbac71b57..cda6b566b326de3fe47fb94b5503c293fdd39447 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 850bff29c07fccc41f59bac0b1d917abb09ce07d..44d418c4dbccb5b30ee4ac862814bd527c08c006 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 0ddd918ee5b09298469386392594ffdcd62e27dd..559726126caf4ecf27e7d20dbee8ad7ac2a9c276 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index b9fbd172758f4e69357353c8b43d2f841581e524..fe4596f091101c115050d8676bf7037a9b32e6c3 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 4bacc977d98628e98916824794fcafee96c4de89..da7c0018f081582cc5732d6ae547e197568f03fc 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index cdf0e1c62fed0d607294b09ab23770342b74ce23..aa5651d3ed2196b44c5a3a999c70337b02964d84 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index bd1b2bf540031c0f1bdc9aad6da12ebd8b5344c2..a5294ceba3f0504219110ec7629f40811bc959b3 100644 (file)
@@ -432,6 +432,21 @@ bio_set_flags_failfast(struct block_device *bdev, int *flags)
 # define VDEV_REQ_DISCARD              REQ_DISCARD
 #endif
 
+/*
+ * 2.6.33 API change
+ * Discard granularity and alignment restrictions may now be set.  For
+ * older kernels which do not support this it is safe to skip it.
+ */
+#ifdef HAVE_DISCARD_GRANULARITY
+static inline void
+blk_queue_discard_granularity(struct request_queue *q, unsigned int dg)
+{
+       q->limits.discard_granularity = dg;
+}
+#else
+#define blk_queue_discard_granularity(x, dg)   ((void)0)
+#endif /* HAVE_DISCARD_GRANULARITY */
+
 /*
  * Default Linux IO Scheduler,
  * Setting the scheduler to noop will allow the Linux IO scheduler to
index e6e880bab0f15e63165f72ad8707829ba1b563ac..be2aec909e94c27c5f4190d5603c4b163cd6f67c 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 9d2aff60b75d8f544818e2fab7c5d49131b46acc..9193af56b4f142bf2dfe8a8ed36161ba4a5184fc 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index feac8f9fb2a80ed09a7eb5fd630ef68455c9e906..8d7829d83bc3121d37d7a27e4278556fa3786243 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index c1bff97bbdd4d52da33b4be5c972188b49c84cd1..7529f0682a586fcf355a76e68bbc3102b72fc1c0 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 87dfb2fbaf8fe0a0ef7f4d1b9b1fc26531b89d4b..1ad95393265570f68afb7797b49b892f2905c55f 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 26dacbec95663a67464ac953e0a43f2ba7d9423d..f5311c3c0409836a101e028e458d9ad21594118b 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index e9b8f9559130f6982ac34b7764c0d5c280d2525d..7a60887d47400acb35beeacff5cca1d5d9f38b50 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 0f36765c12597838147e4ca647c7ffc80cfd9716..2e0fcf9e1795d798a620f2415cea8ae4da4eeca9 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 811b05101def16e1dc8aefcd67923acd0c9ca1dc..081ce0992f444d8905fb3ac333d35719a7180af4 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 88ded3bb94decd556e43966696f14f7b1576cc38..89fe88ac47b328bd8e1aa85e631a5fc79205cc2f 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index b8ba11408ffaf9bc47e5dd6ea1089d97e31e941c..b7059c02f240ef2ebd0fc27b2c9b7ed7622baf27 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 7cd6977b2e9483d2a86a36b16b16fd0c8223849a..8e7e590fe54a1f649244bb53dd7f0782dc862814 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 083fee5d50d1fa4c05b4ec01763def7096efe662..3df767a15be6b3281e2e2c0de167bce958428a22 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 0c6fdcf69da1693ca170708f1e7b6c773b1de20e..b81c3dbe8df8683f6baa34a68800910e783f5584 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 02186ac3938ba04a8faad62427af048dbb0ba50b..23ffb4dc18792d499b9f1081e398aa3c56b858e9 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index f9e0236bc26a69cb1bd04d6a4bebc7a2100b5898..2b2c230f911ac54e65f591e54b2c48ad3eedbc58 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index b601bc12508ab70053247f73dedd5be0bf89c9de..3752b74df334d7974a2d580256fb97d4a6f71a83 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 8258f0fe02b1cb3e8632ab375cae6c9d833d8eb7..fec69dfe7d054d3a5d7bd91ada6468709e723267 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 9ea3a27c200e3d3612e01e8667de698b8a413ba4..3932adcba21b21c2c7193863fc4c45d13dcdbbf8 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 62b8761370caeef4262dfb46e8a493c51eb24492..7d784f360eb6a80518701c8c3e51741136b7eb6d 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index cf37f1639e4af94bb2181c8cd513ad66d9cef816..e32a340d2ca43e58f716fd6dde2e0ad031d6bec5 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 4ca96824125587e8497bc1c5f78a22f5a5a34209..971a2bc5e8b020532a6829e22e219299604dae46 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index a90c890cb544812c07903083cd89a56c7692e51b..64b2c30054f7699504a8b96b1c42c76a13160a17 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index c2c1d2e4a24075b2724e7cf2e9eaf625df0cbc46..f22b6f0a5d148504397da62d35fb15cbffcee575 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index a94b7e1cd2a7f5bb6157df2423713f84662a4cb1..b0c001545ec0a2ee7681c0daefdf39a4b3d2a38d 100644 (file)
@@ -70,6 +70,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 1996ca2e5c95a8e12459e043c58d8adc46d230dc..9c333675ed131749b327f6f92fa6a56867927e58 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index b0346ccfed3c78351cd1ecc711e1afa880a0909c..ad3c16f17ff989d619ffaa338c67b0947c72a95b 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index c91894424776a2ff00aa3c87a35c6b584e9629e0..5412e744fa17bea7b6c24c6e4408cf72c297e79e 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 32e4f3c1e6b08f92adf897099f12b73ac74e88dc..07bda6dbaa4e742f649d7e7ecdcf2104be4ce78f 100644 (file)
@@ -1245,6 +1245,7 @@ __zvol_create_minor(const char *name)
 #ifdef HAVE_BLK_QUEUE_DISCARD
        blk_queue_max_discard_sectors(zv->zv_queue,
            (zvol_max_discard_blocks * zv->zv_volblocksize) >> 9);
+       blk_queue_discard_granularity(zv->zv_queue, zv->zv_volblocksize);
        queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, zv->zv_queue);
 #endif
 #ifdef HAVE_BLK_QUEUE_NONROT
index 3bc46fcbfc87fd23277b4cc617c4322453145610..73c96feb103dcb3fa9ae506240dd1124d90510db 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index c51db423679cf1b02754b9e16a66584a08d551d4..2533fa1c710ec02defa6483cafc9c372d8ff01ac 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index c05e18b9a4255b97626435b3dfb0a8035f82febb..cbcf1df079a982b20f9bb9d061542501fe90d54f 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 17043188e0dfca3e77e520909571fb72dcad29a8..f1ec2f829042cfe9cdfd725dbb4ae9c03f70b93c 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 1f82746ab72ec55019846738c8c03ece1fae709f..81e036d63c3e863b69aaff93ca8407b7b684121e 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 33b2c58525942fae44e9d090768092b94d4f0b09..b961f0f174fa2ef799050f23de27d08add945f43 100644 (file)
@@ -68,6 +68,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index f0c78e091d5d580bd64e60767816dbdd654afaa2..846ca5944b781fc063180eedf4340af577029c36 100644 (file)
@@ -69,6 +69,7 @@ am__aclocal_m4_deps =  \
        $(top_srcdir)/config/kernel-create-umode-t.m4 \
        $(top_srcdir)/config/kernel-d-make-root.m4 \
        $(top_srcdir)/config/kernel-d-obtain-alias.m4 \
+       $(top_srcdir)/config/kernel-discard-granularity.m4 \
        $(top_srcdir)/config/kernel-encode-fh-inode.m4 \
        $(top_srcdir)/config/kernel-evict-inode.m4 \
        $(top_srcdir)/config/kernel-fallocate.m4 \
index 15f5a5cae21cc99b861094941602df5969668bee..260bd5ab7f567ae5337f1ab74f3ba17f1ce02e95 100644 (file)
 /* xattr_handler->set() wants dentry */
 #undef HAVE_DENTRY_XATTR_SET
 
+/* ql->discard_granularity is available */
+#undef HAVE_DISCARD_GRANULARITY
+
 /* Define to 1 if you have the <dlfcn.h> header file. */
 #undef HAVE_DLFCN_H