Re: [RFC] How to fix an async scan - rmmod race?

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

 



On 04/11/12 18:17, Mike Christie wrote:

> I would like scsi core to handle this, but I think right now drivers are
> doing work arounds like your patch.


I've been wondering whether the following approach would make sense
(haven't tested this yet):
- Let scsi_remove_host() stop the SCSI error handler thread instead of
  keeping the error handler thread around until scsi_host_dev_release()
  gets invoked.
- After blk_cleanup_queue() finished, kill all outstanding SCSI
  requests from inside scsi_remove_device() (those requests that have
  already been passed to the LLD via queuecommand) instead of waiting
  until the SCSI error handler detects a timeout.

An advantage of that approach would be that independent of the context
from which an I/O request is submitted (scanning / user space / ...)
that no new requests would be passed to the SCSI LLD after
scsi_remove_host() has finished. So this approach could be an
alternative for Tomas' patch at the start of this thread. However, a
disadvantage is that this approach will only work fine if the LLD stops
I/O completion notifications before invoking scsi_remove_host(). Several
LLDs seem to do that, but not ib_srp. But that's something Dave and I
can take care of.

Bart.
--
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