Add support for DISCARD to ZVOLs.
DISCARD (REQ_DISCARD, BLKDISCARD) is useful for thin provisioning. It allows ZVOL clients to discard (unmap, trim) block ranges from a ZVOL, thus optimizing disk space usage by allowing a ZVOL to shrink instead of just grow. We can't use zfs_space() or zfs_freesp() here, since these functions only work on regular files, not volumes. Fortunately we can use the low-level function dmu_free_long_range() which does exactly what we want. Currently the discard operation is not added to the log. That's not a big deal since losing discard requests cannot result in data corruption. It would however result in disk space usage higher than it should be. Thus adding log support to zvol_discard() is probably a good idea for a future improvement. Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
parent
cb2d19010d
commit
30930fba21
|
@ -72,6 +72,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -49,6 +49,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -52,6 +52,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -52,6 +52,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -52,6 +52,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -52,6 +52,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -52,6 +52,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -52,6 +52,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -52,6 +52,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -52,6 +52,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
dnl #
|
||||||
|
dnl # 2.6.32 API change
|
||||||
|
dnl # Discard requests were moved to the normal I/O path.
|
||||||
|
dnl #
|
||||||
|
AC_DEFUN([ZFS_AC_KERNEL_BLK_QUEUE_DISCARD], [
|
||||||
|
AC_MSG_CHECKING([whether blk_queue_discard() is available])
|
||||||
|
tmp_flags="$EXTRA_KCFLAGS"
|
||||||
|
EXTRA_KCFLAGS="-Wno-unused-but-set-variable"
|
||||||
|
ZFS_LINUX_TRY_COMPILE([
|
||||||
|
#include <linux/blkdev.h>
|
||||||
|
],[
|
||||||
|
struct request_queue *q = NULL;
|
||||||
|
(void) blk_queue_discard(q);
|
||||||
|
],[
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
AC_DEFINE(HAVE_BLK_QUEUE_DISCARD, 1,
|
||||||
|
[blk_queue_discard() is available])
|
||||||
|
],[
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
])
|
||||||
|
EXTRA_KCFLAGS="$tmp_flags"
|
||||||
|
])
|
|
@ -27,6 +27,7 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [
|
||||||
ZFS_AC_KERNEL_BLK_QUEUE_PHYSICAL_BLOCK_SIZE
|
ZFS_AC_KERNEL_BLK_QUEUE_PHYSICAL_BLOCK_SIZE
|
||||||
ZFS_AC_KERNEL_BLK_QUEUE_IO_OPT
|
ZFS_AC_KERNEL_BLK_QUEUE_IO_OPT
|
||||||
ZFS_AC_KERNEL_BLK_QUEUE_NONROT
|
ZFS_AC_KERNEL_BLK_QUEUE_NONROT
|
||||||
|
ZFS_AC_KERNEL_BLK_QUEUE_DISCARD
|
||||||
ZFS_AC_KERNEL_BLK_FETCH_REQUEST
|
ZFS_AC_KERNEL_BLK_FETCH_REQUEST
|
||||||
ZFS_AC_KERNEL_BLK_REQUEUE_REQUEST
|
ZFS_AC_KERNEL_BLK_REQUEUE_REQUEST
|
||||||
ZFS_AC_KERNEL_BLK_RQ_BYTES
|
ZFS_AC_KERNEL_BLK_RQ_BYTES
|
||||||
|
|
|
@ -14151,6 +14151,75 @@ $as_echo "no" >&6; }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -Rf build
|
||||||
|
|
||||||
|
|
||||||
|
EXTRA_KCFLAGS="$tmp_flags"
|
||||||
|
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:$LINENO: checking whether blk_queue_discard() is available" >&5
|
||||||
|
$as_echo_n "checking whether blk_queue_discard() is available... " >&6; }
|
||||||
|
tmp_flags="$EXTRA_KCFLAGS"
|
||||||
|
EXTRA_KCFLAGS="-Wno-unused-but-set-variable"
|
||||||
|
|
||||||
|
|
||||||
|
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 request_queue *q = NULL;
|
||||||
|
(void) blk_queue_discard(q);
|
||||||
|
|
||||||
|
;
|
||||||
|
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_BLK_QUEUE_DISCARD 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
|
fi
|
||||||
|
|
||||||
rm -Rf build
|
rm -Rf build
|
||||||
|
@ -19969,6 +20038,75 @@ $as_echo "no" >&6; }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -Rf build
|
||||||
|
|
||||||
|
|
||||||
|
EXTRA_KCFLAGS="$tmp_flags"
|
||||||
|
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:$LINENO: checking whether blk_queue_discard() is available" >&5
|
||||||
|
$as_echo_n "checking whether blk_queue_discard() is available... " >&6; }
|
||||||
|
tmp_flags="$EXTRA_KCFLAGS"
|
||||||
|
EXTRA_KCFLAGS="-Wno-unused-but-set-variable"
|
||||||
|
|
||||||
|
|
||||||
|
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 request_queue *q = NULL;
|
||||||
|
(void) blk_queue_discard(q);
|
||||||
|
|
||||||
|
;
|
||||||
|
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_BLK_QUEUE_DISCARD 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
|
fi
|
||||||
|
|
||||||
rm -Rf build
|
rm -Rf build
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -49,6 +49,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -49,6 +49,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -424,6 +424,14 @@ bio_set_flags_failfast(struct block_device *bdev, int *flags)
|
||||||
# define VDEV_REQ_FUA REQ_HARDBARRIER
|
# define VDEV_REQ_FUA REQ_HARDBARRIER
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 2.6.32 API change
|
||||||
|
* Use the normal I/O patch for discards.
|
||||||
|
*/
|
||||||
|
#ifdef REQ_DISCARD
|
||||||
|
# define VDEV_REQ_DISCARD REQ_DISCARD
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Default Linux IO Scheduler,
|
* Default Linux IO Scheduler,
|
||||||
* Setting the scheduler to noop will allow the Linux IO scheduler to
|
* Setting the scheduler to noop will allow the Linux IO scheduler to
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -49,6 +49,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -49,6 +49,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -49,6 +49,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -49,6 +49,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -574,6 +574,42 @@ zvol_write(void *arg)
|
||||||
blk_end_request(req, -error, size);
|
blk_end_request(req, -error, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef HAVE_BLK_QUEUE_DISCARD
|
||||||
|
static void
|
||||||
|
zvol_discard(void *arg)
|
||||||
|
{
|
||||||
|
struct request *req = (struct request *)arg;
|
||||||
|
struct request_queue *q = req->q;
|
||||||
|
zvol_state_t *zv = q->queuedata;
|
||||||
|
uint64_t offset = blk_rq_pos(req) << 9;
|
||||||
|
uint64_t size = blk_rq_bytes(req);
|
||||||
|
int error;
|
||||||
|
rl_t *rl;
|
||||||
|
|
||||||
|
if (offset + size > zv->zv_volsize) {
|
||||||
|
blk_end_request(req, -EIO, size);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (size == 0) {
|
||||||
|
blk_end_request(req, 0, size);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
rl = zfs_range_lock(&zv->zv_znode, offset, size, RL_WRITER);
|
||||||
|
|
||||||
|
error = dmu_free_long_range(zv->zv_objset, ZVOL_OBJ, offset, size);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO: maybe we should add the operation to the log.
|
||||||
|
*/
|
||||||
|
|
||||||
|
zfs_range_unlock(rl);
|
||||||
|
|
||||||
|
blk_end_request(req, -error, size);
|
||||||
|
}
|
||||||
|
#endif /* HAVE_BLK_QUEUE_DISCARD */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Common read path running under the zvol taskq context. This function
|
* Common read path running under the zvol taskq context. This function
|
||||||
* is responsible for copying the requested data out of the DMU and in to
|
* is responsible for copying the requested data out of the DMU and in to
|
||||||
|
@ -674,6 +710,13 @@ zvol_request(struct request_queue *q)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef HAVE_BLK_QUEUE_DISCARD
|
||||||
|
if (req->cmd_flags & VDEV_REQ_DISCARD) {
|
||||||
|
zvol_dispatch(zvol_discard, req);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
#endif /* HAVE_BLK_QUEUE_DISCARD */
|
||||||
|
|
||||||
zvol_dispatch(zvol_write, req);
|
zvol_dispatch(zvol_write, req);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
@ -1193,6 +1236,10 @@ __zvol_create_minor(const char *name)
|
||||||
blk_queue_max_segment_size(zv->zv_queue, UINT_MAX);
|
blk_queue_max_segment_size(zv->zv_queue, UINT_MAX);
|
||||||
blk_queue_physical_block_size(zv->zv_queue, zv->zv_volblocksize);
|
blk_queue_physical_block_size(zv->zv_queue, zv->zv_volblocksize);
|
||||||
blk_queue_io_opt(zv->zv_queue, zv->zv_volblocksize);
|
blk_queue_io_opt(zv->zv_queue, zv->zv_volblocksize);
|
||||||
|
#ifdef HAVE_BLK_QUEUE_DISCARD
|
||||||
|
blk_queue_max_discard_sectors(zv->zv_queue, UINT_MAX);
|
||||||
|
queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, zv->zv_queue);
|
||||||
|
#endif
|
||||||
#ifdef HAVE_BLK_QUEUE_NONROT
|
#ifdef HAVE_BLK_QUEUE_NONROT
|
||||||
queue_flag_set_unlocked(QUEUE_FLAG_NONROT, zv->zv_queue);
|
queue_flag_set_unlocked(QUEUE_FLAG_NONROT, zv->zv_queue);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -49,6 +49,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -50,6 +50,7 @@ am__aclocal_m4_deps = \
|
||||||
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
$(top_srcdir)/config/kernel-bio-rw-syncio.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
$(top_srcdir)/config/kernel-blk-end-request.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
$(top_srcdir)/config/kernel-blk-fetch-request.m4 \
|
||||||
|
$(top_srcdir)/config/kernel-blk-queue-discard.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-flush.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-io-opt.m4 \
|
||||||
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
$(top_srcdir)/config/kernel-blk-queue-max-hw-sectors.m4 \
|
||||||
|
|
|
@ -51,6 +51,9 @@
|
||||||
/* blk_fetch_request() is available */
|
/* blk_fetch_request() is available */
|
||||||
#undef HAVE_BLK_FETCH_REQUEST
|
#undef HAVE_BLK_FETCH_REQUEST
|
||||||
|
|
||||||
|
/* blk_queue_discard() is available */
|
||||||
|
#undef HAVE_BLK_QUEUE_DISCARD
|
||||||
|
|
||||||
/* blk_queue_flush() is available */
|
/* blk_queue_flush() is available */
|
||||||
#undef HAVE_BLK_QUEUE_FLUSH
|
#undef HAVE_BLK_QUEUE_FLUSH
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue