public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: James Smart <James.Smart@Emulex.Com>
To: Mike Christie <michaelc@cs.wisc.edu>
Cc: "linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	open-iscsi@googlegroups.com
Subject: Re: [RFC] iscsi transport : add sgio pass-thru support
Date: Tue, 3 Nov 2009 09:37:03 -0500	[thread overview]
Message-ID: <4AF0400F.2030608@emulex.com> (raw)
In-Reply-To: <4AEF715C.4030700@cs.wisc.edu>

I actually started the patch with this in mind - making a common layer.  I was 
able to commonize:  xx_bsg_destroy_job(), xx_bsg_jobdone(), xx_softirq_done(), 
a helper for the timeout function (chkjobdone()), xx_bsg_map_buffer(), 
xx_req_to_bsgjob(), and xx_bsg_goose_queue().

However, what I was finding was I was jumping through hoops with the data 
structures (whose header where, structures within structures, nested private 
areas, etc).  Additionally, I kept finding chunks of the code flow, which had 
parallels to the items in the common routines, that had to be left within the 
transport (e.g. rx path in transport, tx in common; or vice versa) - e.g. if I 
can't encapsulate both sides of the code flow within the common code I lose 
many of the advantages - I ended up abandoning it  under the guise of 
"complexity==bad"

I can post some of the work to see if you have the same conclusion. Yes, I 
don't like the replication either.

-- james s



Mike Christie wrote:
> James Smart wrote:
>> This patch implements the same infrastructure as found in the FC transport
>> for sgio request/response handling.
>>
>> The patch creates (and exports to userland) a new header - scsi_bsg_iscsi.h
>>
>>
> 
> Sorry for the late reply. I am trying to sell my house and move.
> 
> 
> Based on your experience with fc bsg support, do you think there is some 
> common code? It looks like a lot of this is generic. I just started 
> looking at the fc bsg stuff again, so I am not sure ATM.
> 

  reply	other threads:[~2009-11-03 14:37 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-29 21:50 [RFC] iscsi transport : add sgio pass-thru support James Smart
2009-11-02 23:55 ` Mike Christie
2009-11-03 14:37   ` James Smart [this message]
2009-11-04 15:52     ` Mike Christie
  -- strict thread matches above, loose matches on Subject: below --
2009-10-30 13:49 James Smart

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4AF0400F.2030608@emulex.com \
    --to=james.smart@emulex.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=michaelc@cs.wisc.edu \
    --cc=open-iscsi@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox