Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1573817

[PATCH 0/4] md: use bio_clone_fast()

From Ming Lei <tom.leiming@gmail.com>
Newsgroups linux.kernel
Subject [PATCH 0/4] md: use bio_clone_fast()
Date 2017-02-05 07:30 +0100
Message-ID <t7ouJ-3zf-1@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


Hi,

This patches replaces bio_clone() with bio_fast_clone() in
bio_clone_mddev() because:

1) bio_clone_mddev() is used in raid normal I/O and isn't in
resync I/O path, and all the direct access to bvec table in
raid happens on resync I/O only except for write behind of raid1.
Write behind is treated specially, so the replacement is safe.

2) for write behind, bio_clone() is kept, but this patchset
introduces bio_clone_bioset_partial() to just clone one specific 
bvecs range instead of whole table. Then write behind is improved
too.


Thanks,
Ming

Ming Lei (4):
  block: introduce bio_clone_bioset_partial()
  md: introduce bio_clone_slow_mddev_partial()
  md/raid1: use bio_clone_slow_mddev_partial in case of write behind
  md: fast clone bio in bio_clone_mddev()

 block/bio.c         | 61 +++++++++++++++++++++++++++++++++++++++++------------
 drivers/md/md.c     | 24 +++++++++++++++++++--
 drivers/md/md.h     |  3 +++
 drivers/md/raid1.c  | 21 +++++++++++++-----
 include/linux/bio.h | 11 ++++++++--
 5 files changed, 98 insertions(+), 22 deletions(-)

-- 
2.7.4

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH 0/4] md: use bio_clone_fast() Ming Lei <tom.leiming@gmail.com> - 2017-02-05 07:30 +0100
  [PATCH 4/4] md: fast clone bio in bio_clone_mddev() Ming Lei <tom.leiming@gmail.com> - 2017-02-05 07:30 +0100
    Re: [PATCH 4/4] md: fast clone bio in bio_clone_mddev() Christoph Hellwig <hch@infradead.org> - 2017-02-06 10:20 +0100
      Re: [PATCH 4/4] md: fast clone bio in bio_clone_mddev() Ming Lei <tom.leiming@gmail.com> - 2017-02-06 11:50 +0100
        Re: [PATCH 4/4] md: fast clone bio in bio_clone_mddev() Christoph Hellwig <hch@infradead.org> - 2017-02-06 15:30 +0100
  [PATCH 2/4] md: introduce bio_clone_slow_mddev_partial() Ming Lei <tom.leiming@gmail.com> - 2017-02-05 07:30 +0100
    Re: [PATCH 2/4] md: introduce bio_clone_slow_mddev_partial() Christoph Hellwig <hch@infradead.org> - 2017-02-06 10:00 +0100
  [PATCH 1/4] block: introduce bio_clone_bioset_partial() Ming Lei <tom.leiming@gmail.com> - 2017-02-05 07:30 +0100
  [PATCH 3/4] md/raid1: use bio_clone_slow_mddev_partial in case of write behind Ming Lei <tom.leiming@gmail.com> - 2017-02-05 07:30 +0100

csiph-web