diff options
| author | Christof Schmitt <[email protected]> | 2010-09-08 14:39:54 +0200 |
|---|---|---|
| committer | James Bottomley <[email protected]> | 2010-09-16 22:54:16 -0400 |
| commit | fdbd1c5e27dabfa950d4b0f52a20069aeaf67b9d (patch) | |
| tree | 402ea45cf57a2fdcef7a6011a1c64bc7d43cc66e /scripts | |
| parent | e4b9857fe628b453983cac89473a11a76a1f5786 (diff) | |
[SCSI] zfcp: Allow running unit/LUN shutdown without acquiring reference
With the change for the LUN data to be part of the scsi_device, the
slave_destroy callback will be the final call to the
zfcp_erp_unit_shutdown function. The erp tries to acquire a reference
to run the action asynchronously and fail, if it cannot get the
reference. But calling scsi_device_get from slave_destroy will fail,
because the scsi_device is already in the state SDEV_DEL.
Introduce a new call into the zfcp erp to solve this: The function
zfcp_erp_unit_shutdown_wait will close the LUN and wait for the erp to
finish without acquiring an additional reference. The wait allows to
omit the reference; the caller waiting for the erp to finish already
has a reference that holds the struct in place.
Reviewed-by: Swen Schillig <[email protected]>
Signed-off-by: Christof Schmitt <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions