Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1380845
| From | Ming Lei <ming.lei@canonical.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH v5 2/8] block: move two bvec structure into bvec.h |
| Date | 2016-04-17 23:40 +0200 |
| Message-ID | <rp2Ab-2oz-27@gated-at.bofh.it> (permalink) |
| References | <rp2Aa-2oz-7@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
This patch moves 'struct bio_vec' and 'struct bvec_iter'
into 'include/linux/bvec.h', then always include this header
into 'include/linux/blk_types.h'.
With this change, both 'struct bvec_iter' and bvec iterator
helpers don't depend on CONFIG_BLOCK any more, then we can
use bvec iterator to implement iterate_bvec(): lib/iov_iter.c.
Suggested-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Ming Lei <ming.lei@canonical.com>
---
include/linux/bio.h | 1 -
include/linux/blk_types.h | 22 +---------------------
include/linux/bvec.h | 23 ++++++++++++++++++++++-
3 files changed, 23 insertions(+), 23 deletions(-)
diff --git a/include/linux/bio.h b/include/linux/bio.h
index 1c06184..96835a0 100644
--- a/include/linux/bio.h
+++ b/include/linux/bio.h
@@ -31,7 +31,6 @@
/* struct bio, bio_vec and BIO_* flags are defined in blk_types.h */
#include <linux/blk_types.h>
-#include <linux/bvec.h>
#define BIO_DEBUG
diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h
index 86a38ea..a8d8e1f 100644
--- a/include/linux/blk_types.h
+++ b/include/linux/blk_types.h
@@ -6,6 +6,7 @@
#define __LINUX_BLK_TYPES_H
#include <linux/types.h>
+#include <linux/bvec.h>
struct bio_set;
struct bio;
@@ -17,28 +18,7 @@ struct cgroup_subsys_state;
typedef void (bio_end_io_t) (struct bio *);
typedef void (bio_destructor_t) (struct bio *);
-/*
- * was unsigned short, but we might as well be ready for > 64kB I/O pages
- */
-struct bio_vec {
- struct page *bv_page;
- unsigned int bv_len;
- unsigned int bv_offset;
-};
-
#ifdef CONFIG_BLOCK
-
-struct bvec_iter {
- sector_t bi_sector; /* device address in 512 byte
- sectors */
- unsigned int bi_size; /* residual I/O count */
-
- unsigned int bi_idx; /* current index into bvl_vec */
-
- unsigned int bi_bvec_done; /* number of bytes completed in
- current bvec */
-};
-
/*
* main unit of I/O for the block layer and lower layers (ie drivers and
* stacking drivers)
diff --git a/include/linux/bvec.h b/include/linux/bvec.h
index 29c459d..096efd2 100644
--- a/include/linux/bvec.h
+++ b/include/linux/bvec.h
@@ -20,7 +20,28 @@
#ifndef __LINUX_BVEC_ITER_H
#define __LINUX_BVEC_ITER_H
-#include <linux/blk_types.h>
+#include <linux/kernel.h>
+#include <linux/bug.h>
+
+/*
+ * was unsigned short, but we might as well be ready for > 64kB I/O pages
+ */
+struct bio_vec {
+ struct page *bv_page;
+ unsigned int bv_len;
+ unsigned int bv_offset;
+};
+
+struct bvec_iter {
+ sector_t bi_sector; /* device address in 512 byte
+ sectors */
+ unsigned int bi_size; /* residual I/O count */
+
+ unsigned int bi_idx; /* current index into bvl_vec */
+
+ unsigned int bi_bvec_done; /* number of bytes completed in
+ current bvec */
+};
/*
* various member access, note that bio_data should of course not be used
--
1.9.1
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v5 0/8] block: prepare for multipage bvecs Ming Lei <ming.lei@canonical.com> - 2016-04-17 23:40 +0200 [PATCH v5 7/8] block: drbd: avoid to use BIO_MAX_SIZE Ming Lei <ming.lei@canonical.com> - 2016-04-17 23:40 +0200 [PATCH v5 4/8] iov_iter: use bvec iterator to implement iterate_bvec() Ming Lei <ming.lei@canonical.com> - 2016-04-17 23:40 +0200 [PATCH v5 5/8] fs: xfs: replace BIO_MAX_SECTORS with BIO_MAX_PAGES Ming Lei <ming.lei@canonical.com> - 2016-04-17 23:40 +0200 [PATCH v5 2/8] block: move two bvec structure into bvec.h Ming Lei <ming.lei@canonical.com> - 2016-04-17 23:40 +0200 [PATCH v5 1/8] block: move bvec iterator into include/linux/bvec.h Ming Lei <ming.lei@canonical.com> - 2016-04-17 23:40 +0200 [PATCH v5 6/8] block: bio: remove BIO_MAX_SECTORS Ming Lei <ming.lei@canonical.com> - 2016-04-17 23:40 +0200
csiph-web