Re: [usb-storage] Re: [PATCH 04/14] uas: lock the abort handler

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

 



On Wed, 3 Feb 2016, Oliver Neukum wrote:

> On Tue, 2016-01-26 at 10:28 -0500, Alan Stern wrote:
> > On Tue, 26 Jan 2016, Oliver Neukum wrote:
> 
> > > That is problematic. The ABORT_TMF does need IO for which we need
> > > to wait. And if we just submit and pretend the abort worked, the tag
> > > will be reused.
> > > Perhaps we could drop the spinlock. I think it is time to talk to
> > > the SCSI people.
> > 
> > The abort handler doesn't have to wait for the command to terminate.  
> > It merely has to initiate an abort and return.  The SCSI layer gets 
> > notified via the usual mechanism when the command eventually finishes, 
> > whether it was successful or not.
> 
> This is stange. I don't see how we can guarantee a command completion
> if eh_abort_handler() has sent the TMF.
> It was my understanding that returning from eh_abort_handler()
> means that a tag is considered free again and will be reused.
> Could you clarify?

I'm sorry, it looks like I misremembered how usb-storage works.

After checking the code, I see that the abort handler _does_ wait for 
the command to finish before returning.  The abort handler is called 
with no locks held, and it releases its spinlock while it waits.

Is there any reason uas can't do the same thing?

Alan Stern

--
To unsubscribe from this list: 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