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

From: Tejun Heo
Date: Wed Apr 01 2009 - 09:28:57 EST


FUJITA Tomonori wrote:
> 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.

Yeah, it should.

>>>> 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?

Yes, it can. The previous bio_kmalloc() thing was for this.

Thanks.

--
tejun
--
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/