lkml.org 
[lkml]   [2002]   [Feb]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 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/

\
 
 \ /
  Last update: 2005-03-22 13:24    [W:0.106 / U:0.560 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site