Re: [PATCH v3 04/12] Protect SCSI device state changes with a mutex

Christoph Hellwig
2017-06-05T08:09:39Z

On Fri, Jun 02, 2017 at 02:21:55PM -0700, Bart Van Assche wrote:
> Serializing SCSI device state changes avoids that two state changes
> can occur concurrently, e.g. the state changes in scsi_target_block()
> and __scsi_remove_device(). This serialization is essential to make
> patch "Make __scsi_remove_device go straight from BLOCKED to DEL"
> work reliably.
>
> Enable this mechanism for all scsi_target_*block() callers but not
> for the scsi_internal_device_unblock() calls from the mpt3sas driver
> because that driver can call scsi_internal_device_unblock() from
> atomic context.

And not taking the lock in that path is safe because of what conditions?