From: Mike Snitzer <snitzer@redhat.com>
To: Kent Overstreet <kmo@daterainc.com>
Cc: axboe@kernel.dk, dm-devel@redhat.com,
linux-kernel@vger.kernel.org, hch@infradead.org, tj@kernel.org,
Alasdair Kergon <agk@redhat.com>
Subject: Re: [PATCH 17/23] dm: Refactor for new bio cloning/splitting
Date: Tue, 29 Oct 2013 20:09:08 -0400 [thread overview]
Message-ID: <20131030000908.GB2989@redhat.com> (raw)
In-Reply-To: <1383077896-4132-18-git-send-email-kmo@daterainc.com>
On Tue, Oct 29 2013 at 4:18pm -0400,
Kent Overstreet <kmo@daterainc.com> wrote:
> We need to convert the dm code to the new bvec_iter primitives which
> respect bi_bvec_done; they also allow us to drastically simplify dm's
> bio splitting code.
>
> Also kill bio_sector_offset(), dm was the only user and it doesn't make
> much sense anymore.
>
> Signed-off-by: Kent Overstreet <kmo@daterainc.com>
> Cc: Jens Axboe <axboe@kernel.dk>
> Cc: Alasdair Kergon <agk@redhat.com>
> Cc: dm-devel@redhat.com
> ---
> drivers/md/dm-thin.c | 8 ++-
> drivers/md/dm.c | 170 ++++++---------------------------------------------
> fs/bio.c | 38 ------------
> include/linux/bio.h | 1 -
> 4 files changed, 24 insertions(+), 193 deletions(-)
>
> diff --git a/drivers/md/dm-thin.c b/drivers/md/dm-thin.c
> index a654024..1abb4a2 100644
> --- a/drivers/md/dm-thin.c
> +++ b/drivers/md/dm-thin.c
> @@ -611,8 +611,10 @@ static void cell_defer_no_holder(struct thin_c *tc, struct dm_bio_prison_cell *c
>
> static void process_prepared_mapping_fail(struct dm_thin_new_mapping *m)
> {
> - if (m->bio)
> + if (m->bio) {
> m->bio->bi_end_io = m->saved_bi_end_io;
> + atomic_inc(&m->bio->bi_remaining);
> + }
> cell_error(m->tc->pool, m->cell);
> list_del(&m->list);
> mempool_free(m, m->tc->pool->mapping_pool);
> @@ -626,8 +628,10 @@ static void process_prepared_mapping(struct dm_thin_new_mapping *m)
> int r;
>
> bio = m->bio;
> - if (bio)
> + if (bio) {
> bio->bi_end_io = m->saved_bi_end_io;
> + atomic_inc(&bio->bi_remaining);
> + }
>
> if (m->err) {
> cell_error(pool, m->cell);
But now that I look closer, the above dm-thin.c hunks belong in:
[PATCH 19/23] block: Generic bio chaining
Seems these changes were mistakenly folded into this 17/23 patch?
next prev parent reply other threads:[~2013-10-30 0:09 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-29 20:17 [PATCH] Immutable biovecs Kent Overstreet
2013-10-29 20:17 ` [PATCH 01/23] block: Use rw_copy_check_uvector() Kent Overstreet
2013-10-29 20:17 ` [PATCH 02/23] block: Consolidate duplicated bio_trim() implementations Kent Overstreet
2013-10-29 20:17 ` [PATCH 03/23] bcache: Kill unaligned bvec hack Kent Overstreet
2013-10-29 20:17 ` [PATCH 04/23] block: Abstract out bvec iterator Kent Overstreet
2013-10-29 20:17 ` [Drbd-dev] " Kent Overstreet
2013-10-29 20:17 ` Kent Overstreet
2013-10-31 3:29 ` NeilBrown
2013-10-31 3:29 ` [Drbd-dev] " NeilBrown
2013-10-31 3:29 ` NeilBrown
2013-10-31 17:14 ` Ed Cashin
2013-10-31 17:14 ` [Drbd-dev] " Ed Cashin
2013-10-31 17:14 ` Ed Cashin
2013-10-29 20:17 ` [PATCH 05/23] dm: Use bvec_iter for dm_bio_record() Kent Overstreet
2013-10-29 20:17 ` [PATCH 06/23] block: Convert bio_iovec() to bvec_iter Kent Overstreet
2013-10-29 20:17 ` Kent Overstreet
2013-10-29 20:18 ` [PATCH 07/23] block: Convert bio_for_each_segment() " Kent Overstreet
2013-10-29 20:18 ` Kent Overstreet
2013-10-29 20:18 ` Kent Overstreet
2013-10-29 20:18 ` Kent Overstreet
2013-10-29 20:18 ` [Drbd-dev] " Kent Overstreet
2013-10-29 20:18 ` Kent Overstreet
2013-10-29 20:18 ` [Cluster-devel] " Kent Overstreet
2013-10-29 20:18 ` [Drbd-dev] [PATCH 08/23] block: Immutable bio vecs Kent Overstreet
2013-10-29 20:18 ` Kent Overstreet
2013-10-29 20:18 ` [PATCH 09/23] block: Convert bio_copy_data() to bvec_iter Kent Overstreet
2013-10-29 20:18 ` [PATCH 10/23] bio-integrity: Convert " Kent Overstreet
2013-10-29 20:18 ` [PATCH 11/23] block: Kill bio_segments()/bi_vcnt usage Kent Overstreet
2013-10-29 20:18 ` [PATCH 12/23] block: Convert drivers to immutable biovecs Kent Overstreet
2013-10-29 20:18 ` [PATCH 13/23] aoe: Convert " Kent Overstreet
2013-10-29 20:18 ` [PATCH 14/23] ceph: " Kent Overstreet
2013-10-29 20:18 ` [PATCH 15/23] block: Kill bio_iovec_idx(), __bio_iovec() Kent Overstreet
2013-10-29 20:18 ` [PATCH 16/23] rbd: Refactor bio cloning, don't clone biovecs Kent Overstreet
2013-10-29 20:18 ` [PATCH 17/23] dm: Refactor for new bio cloning/splitting Kent Overstreet
2013-10-29 23:04 ` Mike Snitzer
2013-10-30 0:09 ` Mike Snitzer [this message]
2013-10-30 0:19 ` Kent Overstreet
2013-10-30 0:29 ` Mike Snitzer
2013-10-30 0:29 ` Mike Snitzer
2013-10-31 14:05 ` Jens Axboe
2013-10-29 20:18 ` [PATCH 18/23] block: Remove bi_idx hacks Kent Overstreet
2013-10-29 20:18 ` [PATCH 19/23] block: Generic bio chaining Kent Overstreet
2013-10-29 20:18 ` [PATCH 20/23] block: Rename bio_split() -> bio_pair_split() Kent Overstreet
2013-10-29 20:18 ` [PATCH 21/23] block: Introduce new bio_split() Kent Overstreet
2013-10-29 20:18 ` [PATCH 22/23] block: Kill bio_pair_split() Kent Overstreet
2013-10-29 20:18 ` [PATCH 23/23] block: Don't save/copy bvec array anymore, share when cloning Kent Overstreet
2013-10-29 20:36 ` [PATCH] Immutable biovecs Jens Axboe
2013-10-30 0:06 ` Kent Overstreet
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20131030000908.GB2989@redhat.com \
--to=snitzer@redhat.com \
--cc=agk@redhat.com \
--cc=axboe@kernel.dk \
--cc=dm-devel@redhat.com \
--cc=hch@infradead.org \
--cc=kmo@daterainc.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.