FUJITA Tomonori wrote: > On Wed, 11 Feb 2009 17:07:16 +0200 > Boaz Harrosh <bharrosh@xxxxxxxxxxx> wrote: > >>> >>> >> Sure it can pass pages to ULD but then how ULD maks a request out of >> pages? > > If you extend blk_rq_map_kern as James did, your ULD make a request > out of passed pages, that is, the block layer properly builds a > request with bio(s). What? I don't understand? blk_rq_map_kern takes a kernel-pointer and length, how to pass array of page* ? > > I think that another possible option is adding a new mapping function > that can handle multiple bios for kernel buffers (as Mike extended > blk_rq_map_user). > Yes adding a new mapping function can help. Please note I need to add (append) pages same as bio_add_pc_page() but on request level. And yet we had an entry that did exactly that, blk_rq_append_bio(), no? > >> And it gets more complicated then that (above multiple times) > > I don't think so. If you don't have time to work on it, please let me > know. I'll fix OSD ULD. I have all the time in the world, And yes what James did with blk_rq_map_kern will help with appending other osd segments on top of data. If you propose the appropriate new API for block request level I can implement that in block, and also in OSD. What other entry you want to add/change that solve my need? Thanks Boaz -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html