On Fri, 8 Jul 2011, James Bottomley wrote: > On Fri, 2011-07-08 at 15:43 -0400, Alan Stern wrote: > > On Fri, 8 Jul 2011, James Bottomley wrote: > > > > > However, that does beg the question of why sr is using the device after > > > sr_remove() has completed. That seems to be because of the block ops > > > being the dominant structure, so we try to do cleanup when we get the > > > block release rather than the driver release ... that looks to be the > > > root cause to me. > > > > Hmmm. What happens if I use sysfs to unbind the scsi_device from sr > > while it is still mounted, and then quickly rebind it again? Until the > > filesystem is unmounted and the block release is complete, would both > > instances end up sending commands to the device concurrently? > > The device will go into CANCEL or DEL and resurrection is impossible ... > it should give an error when you attempt the rebind. No, you're thinking of device removal. I'm talking about unbinding; the device remains intact, only the driver is affected. The device doesn't go into CANCEL or DEL, and the driver can indeed be rebound. In fact I just tried it (with a USB flash drive, not a cdrom) and the rebind worked perfectly. 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