Re: [PATCH 8/8] blk-map: reimplement blk_rq_map_user() usingblk_rq_map_user_iov()

From: FUJITA Tomonori
Date: Wed Apr 01 2009 - 09:23:44 EST


On Wed, 01 Apr 2009 22:17:05 +0900
Tejun Heo <tj@xxxxxxxxxx> wrote:

> Hello,
>
> FUJITA Tomonori wrote:
> > On Wed, 01 Apr 2009 22:03:39 +0900
> > Tejun Heo <tj@xxxxxxxxxx> wrote:
> >
> >> FUJITA Tomonori wrote:
> >>> No, we are not talking about blk_rq_append_bio().
> >>>
> >>> We are talking about the multiple bio handling in blk_rq_map_user,
> >>> which is the feature that Mike added long time ago. The feature is
> >>> surely necessary for some users. So you can't remote it.
> >> How would someone use that without blk_rq_append_bio()? The only
> >
> > Hmm, I'm not sure what you are talking about.
> >
> > Why do we need to live without blk_rq_append_bio()?
> >
> > You want to remove blk_rq_append_bio()? Please make your goal clear.
>
> Yeah, I'm writing header message for the next patchset. It will go
> out in a few minutes. With the bogus fix part removed, this patch
> (and related earlier ones) should have been part of the next set.
> And, yes, the goal is removing blk_rq_append_bio() and any and all
> request/bio internal meddling with further patchsets.

Sounds a good idea. But I need to review that.

But 7/8 and 8/8 patches are not bug fixes at all (as I wrote, your
descriptions about checking is untrue). It can't be for 2.6.30. So put
them to the next patchset.


> >> reason blk_rq_map_user() had multiple bio chaining was to work around
> >> BIO_MAX_SIZE. blk_rq_map_user_iov() doesn't support multiple bio
> >> chaining, so sans blk_rq_append_bio() or playing with rq/bio internals
> >> directly, there's no way to use or even know about multiple bios.
> >
> > Yes, only non iovec interface of SG_IO supports large data
> > transfer. Users have been lived with that.
>
> This patch doesn't remove any feature. You don't lose anything. What
> used to be done with multiple bios is now done with single bio. The
> implementation is simpler and shorter. Using or not using multiple
> bios doesn't (and shouldn't) make any difference to blk_map_*() users.

Hmm, with your change, blk_rq_map_user can't handle larger than
BIO_MAX_SIZE, right?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/