diff options
Diffstat (limited to 'drivers/s390/scsi/zfcp_aux.c')
-rw-r--r-- | drivers/s390/scsi/zfcp_aux.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/s390/scsi/zfcp_aux.c b/drivers/s390/scsi/zfcp_aux.c index a8c965b6f744..ee13a455c823 100644 --- a/drivers/s390/scsi/zfcp_aux.c +++ b/drivers/s390/scsi/zfcp_aux.c | |||
@@ -351,7 +351,7 @@ err_out_free: | |||
351 | */ | 351 | */ |
352 | void zfcp_unit_dequeue(struct zfcp_unit *unit) | 352 | void zfcp_unit_dequeue(struct zfcp_unit *unit) |
353 | { | 353 | { |
354 | zfcp_unit_wait(unit); | 354 | wait_event(unit->remove_wq, atomic_read(&unit->refcount) == 0); |
355 | write_lock_irq(&zfcp_data.config_lock); | 355 | write_lock_irq(&zfcp_data.config_lock); |
356 | list_del(&unit->list); | 356 | list_del(&unit->list); |
357 | write_unlock_irq(&zfcp_data.config_lock); | 357 | write_unlock_irq(&zfcp_data.config_lock); |
@@ -740,7 +740,7 @@ err_out: | |||
740 | */ | 740 | */ |
741 | void zfcp_port_dequeue(struct zfcp_port *port) | 741 | void zfcp_port_dequeue(struct zfcp_port *port) |
742 | { | 742 | { |
743 | zfcp_port_wait(port); | 743 | wait_event(port->remove_wq, atomic_read(&port->refcount) == 0); |
744 | write_lock_irq(&zfcp_data.config_lock); | 744 | write_lock_irq(&zfcp_data.config_lock); |
745 | list_del(&port->list); | 745 | list_del(&port->list); |
746 | port->adapter->ports--; | 746 | port->adapter->ports--; |