diff options
Diffstat (limited to 'drivers/s390/scsi/zfcp_erp.c')
-rw-r--r-- | drivers/s390/scsi/zfcp_erp.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/s390/scsi/zfcp_erp.c b/drivers/s390/scsi/zfcp_erp.c index 50e5fbe2252..feda1db56b2 100644 --- a/drivers/s390/scsi/zfcp_erp.c +++ b/drivers/s390/scsi/zfcp_erp.c | |||
@@ -603,9 +603,11 @@ static void zfcp_erp_wakeup(struct zfcp_adapter *adapter) | |||
603 | 603 | ||
604 | static int zfcp_erp_adapter_strategy_open_qdio(struct zfcp_erp_action *act) | 604 | static int zfcp_erp_adapter_strategy_open_qdio(struct zfcp_erp_action *act) |
605 | { | 605 | { |
606 | if (zfcp_qdio_open(act->adapter)) | 606 | struct zfcp_qdio *qdio = act->adapter->qdio; |
607 | |||
608 | if (zfcp_qdio_open(qdio)) | ||
607 | return ZFCP_ERP_FAILED; | 609 | return ZFCP_ERP_FAILED; |
608 | init_waitqueue_head(&act->adapter->request_wq); | 610 | init_waitqueue_head(&qdio->req_q_wq); |
609 | atomic_set_mask(ZFCP_STATUS_ADAPTER_QDIOUP, &act->adapter->status); | 611 | atomic_set_mask(ZFCP_STATUS_ADAPTER_QDIOUP, &act->adapter->status); |
610 | return ZFCP_ERP_SUCCEEDED; | 612 | return ZFCP_ERP_SUCCEEDED; |
611 | } | 613 | } |
@@ -710,7 +712,7 @@ static void zfcp_erp_adapter_strategy_close(struct zfcp_erp_action *act) | |||
710 | struct zfcp_adapter *adapter = act->adapter; | 712 | struct zfcp_adapter *adapter = act->adapter; |
711 | 713 | ||
712 | /* close queues to ensure that buffers are not accessed by adapter */ | 714 | /* close queues to ensure that buffers are not accessed by adapter */ |
713 | zfcp_qdio_close(adapter); | 715 | zfcp_qdio_close(adapter->qdio); |
714 | zfcp_fsf_req_dismiss_all(adapter); | 716 | zfcp_fsf_req_dismiss_all(adapter); |
715 | adapter->fsf_req_seq_no = 0; | 717 | adapter->fsf_req_seq_no = 0; |
716 | zfcp_fc_wka_ports_force_offline(adapter->gs); | 718 | zfcp_fc_wka_ports_force_offline(adapter->gs); |