On Wed, Sep 01, 2010 at 02:06:26PM -0700, Vasu Dev wrote:
> > > It looks safe to me to call scsi_done() w/o host_lock held,
> >
> > Hmmmm, this indeed this appears to be safe now.. For some reason I had
> > it in my head (and in TCM_Loop virtual SCSI LLD code as well) that
> > host_lock needed to be held while calling struct scsi_cmnd->scsi_done().
> >
> > I assume this is some old age relic from the BLK days in the SCSI
> > completion path, and the subsequent conversion. I still see a couple of
> > ancient drivers in drivers/scsi/ that are still doing this, but I
> > believe I stand corrected in that (all..?) of the modern in-use
> > drivers/scsi code is indeed *not* holding host_lock while calling struct
> > scsi_cmnd->scsi_done()..
> >
>
> fcoe/libfc moved to scsi_done w/o holding scsi host_lock a while ago
> around dec, 09 and it was done after discussion with Mathew and Chris
> Leech from fcoe side at that time, they may have more to comment on
> this.
There's not a whole lot to comment on. Matthew Wilcox was helping me
look for opportunities to reduce our host_lock use, and said he didn't
think it was needed around scsi_done anymore. It held up under testing,
so I submitted a patch.
Chris
_______________________________________________
devel mailing list
[email protected]
http://www.open-fcoe.org/mailman/listinfo/devel