Re: [PATCH] Re: sleeping in scsi EH

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jeff Garzik wrote:
> Brian King wrote:
> 
>>Jeff Garzik wrote:
>>
>>
>>>Christoph Hellwig wrote:
>>>
>>>
>>>
>>>>On Fri, May 27, 2005 at 04:37:29AM -0400, Jeff Garzik wrote:
>>>>
>>>>
>>>>
>>>>
>>>>>Christoph Hellwig wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>You can sleep in them.  You must however release the host lock and enable
>>>>>>irqs first and reverse that before returning.  The error handlers don't
>>>>>>need the host lock, but we're stuck with the unfortunate calling convention
>>>>>>for now.
>>>>>
>>>>>Why are we stuck with this calling convention, when everyone who cares 
>>>>>circumvents it?
>>>>
>>>>
>>>>Because no one found the time to do a full transition yet.  If you want to
>>>>update all scsi drivers feel free.  One patch per method please.
>>>
>>>
>>Jeff,
>>
>>Please add the following patch to your eh_abort locking patch for the ipr driver.
>>It fixes a race condition your patch would introduce. Thanks.
> 
> 
> Which race is introduced?  The SCSI EH does a lot of synchronization for 
> you...

I could get an interrupt from the adapter signaling a fatal error, which then prompts
ipr to reset the card by running BIST on it. The in_reset_reload indicates ipr is
currently doing this. While the card is running BIST, very bad things happen if you
try to do mmio's to the card, which is why I need to check this flag and send the
abort to the adapter while holding the host lock.

Brian

-- 
Brian King
eServer Storage I/O
IBM Linux Technology Center
-
: 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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux