Messages in this thread | | | Date | Fri, 8 Feb 2002 17:13:27 -0500 | From | Benjamin LaHaise <> | Subject | Re: patch: aio + bio for raw io |
| |
On Fri, Feb 08, 2002 at 01:07:58PM -0800, Badari Pulavarty wrote: > I am looking at the 2.5 patch you sent out. I have few questions/comments: > > 1) brw_kvec_async() does not seem to split IO at BIO_MAX_SIZE. I thought > each bio can handle only BIO_MAX_SIZE (ll_rw_kio() is creating one bio > for each BIO_MAX_SIZE IO).
Sounds like a needless restriction in bio, especially as one of the design requirements for the 2.5 block work is that we're able to support large ios (think 4MB page support).
> And also, currently BIO_MAX_SIZE is only 64K. Infact, if I try to issue > 64K IO using submit_bio(), I get following BUG() on my QLOGIC controller.
Jens? Also, why does the bio callback return a value? Nothing could ever possibly use it as far as I can see.
> 2) Could you please make map_user_kvec() generic enough to handle mapping > of mutliple iovecs to single kvec (to handle readv/writev). I think > this is a very easy change: > > * Add alloc_kvec() and take out the kmalloc() from map_user_kvec(). > * Change map_user_kvec() to start mapping from kvec->veclet[kvec->nr] > instead of kvec->veclet[0] > > This way allocation for kvec to hold all the iovecs can be done at higher > level and map_user_kvec() can be called in a loop once for each iovec.
Sounds good.
-ben - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |