summaryrefslogtreecommitdiffstats
path: root/config/kernel-blk-queue-unplug.m4
diff options
context:
space:
mode:
Diffstat (limited to 'config/kernel-blk-queue-unplug.m4')
-rw-r--r--config/kernel-blk-queue-unplug.m421
1 files changed, 21 insertions, 0 deletions
diff --git a/config/kernel-blk-queue-unplug.m4 b/config/kernel-blk-queue-unplug.m4
index 45cc2322a..075fbccd1 100644
--- a/config/kernel-blk-queue-unplug.m4
+++ b/config/kernel-blk-queue-unplug.m4
@@ -21,3 +21,24 @@ AC_DEFUN([ZFS_AC_KERNEL_BLK_QUEUE_HAVE_BIO_RW_UNPLUG], [
])
EXTRA_KCFLAGS="$tmp_flags"
])
+
+AC_DEFUN([ZFS_AC_KERNEL_BLK_QUEUE_HAVE_BLK_PLUG], [
+ AC_MSG_CHECKING([whether struct blk_plug is available])
+ tmp_flags="$EXTRA_KCFLAGS"
+ EXTRA_KCFLAGS="${NO_UNUSED_BUT_SET_VARIABLE}"
+ ZFS_LINUX_TRY_COMPILE([
+ #include <linux/blkdev.h>
+ ],[
+ struct blk_plug plug;
+
+ blk_start_plug(&plug);
+ blk_finish_plug(&plug);
+ ],[
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_BLK_QUEUE_HAVE_BLK_PLUG, 1,
+ [struct blk_plug is available])
+ ],[
+ AC_MSG_RESULT(no)
+ ])
+ EXTRA_KCFLAGS="$tmp_flags"
+])