From 9ddf9b8e1587ec7112913a6b5e1f82e468a891b6 Mon Sep 17 00:00:00 2001 From: Richard Yao Date: Sun, 6 Jul 2014 20:30:33 -0400 Subject: [PATCH] Remove rq_for_each_segment() autotools check Signed-off-by: Richard Yao --- config/kernel-rq-for-each_segment.m4 | 47 ---------------------------- config/kernel.m4 | 1 - include/linux/blkdev_compat.h | 42 ------------------------- 3 files changed, 90 deletions(-) delete mode 100644 config/kernel-rq-for-each_segment.m4 diff --git a/config/kernel-rq-for-each_segment.m4 b/config/kernel-rq-for-each_segment.m4 deleted file mode 100644 index 84ce7d1ec..000000000 --- a/config/kernel-rq-for-each_segment.m4 +++ /dev/null @@ -1,47 +0,0 @@ -dnl # -dnl # 2.6.x API change -dnl # -dnl # 3.14 API change -dnl # -AC_DEFUN([ZFS_AC_KERNEL_RQ_FOR_EACH_SEGMENT], [ - tmp_flags="$EXTRA_KCFLAGS" - EXTRA_KCFLAGS="${NO_UNUSED_BUT_SET_VARIABLE}" - - AC_MSG_CHECKING([whether rq_for_each_segment() wants bio_vec *]) - ZFS_LINUX_TRY_COMPILE([ - #include - ],[ - struct bio_vec *bv; - struct req_iterator iter; - struct request *req = NULL; - rq_for_each_segment(bv, req, iter) { } - ],[ - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_RQ_FOR_EACH_SEGMENT, 1, - [rq_for_each_segment() is available]) - AC_DEFINE(HAVE_RQ_FOR_EACH_SEGMENT_BVP, 1, - [rq_for_each_segment() wants bio_vec *]) - ],[ - AC_MSG_RESULT(no) - ]) - - AC_MSG_CHECKING([whether rq_for_each_segment() wants bio_vec]) - ZFS_LINUX_TRY_COMPILE([ - #include - ],[ - struct bio_vec bv; - struct req_iterator iter; - struct request *req = NULL; - rq_for_each_segment(bv, req, iter) { } - ],[ - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_RQ_FOR_EACH_SEGMENT, 1, - [rq_for_each_segment() is available]) - AC_DEFINE(HAVE_RQ_FOR_EACH_SEGMENT_BV, 1, - [rq_for_each_segment() wants bio_vec]) - ],[ - AC_MSG_RESULT(no) - ]) - - EXTRA_KCFLAGS="$tmp_flags" -]) diff --git a/config/kernel.m4 b/config/kernel.m4 index b3dd7232c..245406297 100644 --- a/config/kernel.m4 +++ b/config/kernel.m4 @@ -42,7 +42,6 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [ ZFS_AC_KERNEL_GET_DISK_RO 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 diff --git a/include/linux/blkdev_compat.h b/include/linux/blkdev_compat.h index 0b5c8af42..b2b641840 100644 --- a/include/linux/blkdev_compat.h +++ b/include/linux/blkdev_compat.h @@ -249,48 +249,6 @@ rq_is_sync(struct request *req) } #endif /* HAVE_RQ_IS_SYNC */ -#ifndef HAVE_RQ_FOR_EACH_SEGMENT -struct req_iterator { - int i; - struct bio *bio; -}; - -#define for_each_bio(_bio) \ - for (; _bio; _bio = _bio->bi_next) - -#define __rq_for_each_bio(_bio, rq) \ - if ((rq->bio)) \ - for (_bio = (rq)->bio; _bio; _bio = _bio->bi_next) - -#define rq_for_each_segment(bvl, _rq, _iter) \ - __rq_for_each_bio(_iter.bio, _rq) \ - bio_for_each_segment(bvl, _iter.bio, _iter.i) - -#define HAVE_RQ_FOR_EACH_SEGMENT_BVP 1 -#endif /* HAVE_RQ_FOR_EACH_SEGMENT */ - -/* - * 3.14 API change - * rq_for_each_segment changed from taking bio_vec * to taking bio_vec. - * We provide rq_for_each_segment4 which takes both. - * You should not modify the fields in @bv and @bvp. - * - * Note: the if-else is just to inject the assignment before the loop body. - */ -#ifdef HAVE_RQ_FOR_EACH_SEGMENT_BVP -#define rq_for_each_segment4(bv, bvp, rq, iter) \ - rq_for_each_segment(bvp, rq, iter) \ - if ((bv = *bvp), 0) \ - ; \ - else -#else -#define rq_for_each_segment4(bv, bvp, rq, iter) \ - rq_for_each_segment(bv, rq, iter) \ - if ((bvp = &bv), 0) \ - ; \ - else -#endif - #ifdef HAVE_BIO_BVEC_ITER #define BIO_BI_SECTOR(bio) (bio)->bi_iter.bi_sector #define BIO_BI_SIZE(bio) (bio)->bi_iter.bi_size