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