lkml.org 
[lkml]   [2009]   [Apr]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] [Target_Core_Mod/pSCSI]: Add optional legacy scsi_execute_async() usage for Linux/SCSI passthrough
Boaz Harrosh, on 04/19/2009 02:56 PM wrote:
> On 04/17/2009 04:09 AM, Nicholas A. Bellinger wrote:

[..]

> Are you aware that scsi_execute_async() has gone in 2.6.30-rc1?
>
> I'm not sure what would be the best alternative for you. I would say
> a bio, but it is still being debated. Your current options are:
>
> 1. bio_alloc then loop () bio_add_pc_page, and finally blk_rq_append_bio
> (Which block people don't like)
> 2. sglist => page-pointers-array translation and blk_rq_map_user with
> struct rq_map_data mode. (not possible with all kind of sglists)
> 2. sglist => iovec translation and blk_rq_map_user_iov()
> (Very very ugly mapping of pages to virtual pointers)
>
> I have a similar situation with my OSD code.

Do you have somewhere in it a need to run an arbitrary CDB with data
pages stored in an sglist? Is that code accepted in the mainline?

If yes, why not to resurrect the necessary bits of scsi_execute_async()
(option (1) above)? It was deleted, because in 2.6.30 there are no users
of it left, but if there are users (OSD), then why not to return it?
Seems nothing better for the sg->bio case can be invented.

Vlad


\
 
 \ /
  Last update: 2009-04-21 14:19    [W:0.102 / U:0.320 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site