aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/scsi/zfcp_erp.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/s390/scsi/zfcp_erp.c')
-rw-r--r--drivers/s390/scsi/zfcp_erp.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/s390/scsi/zfcp_erp.c b/drivers/s390/scsi/zfcp_erp.c
index 2dc8110ebf74..f9383f068169 100644
--- a/drivers/s390/scsi/zfcp_erp.c
+++ b/drivers/s390/scsi/zfcp_erp.c
@@ -788,6 +788,7 @@ zfcp_erp_action_ready(struct zfcp_erp_action *erp_action)
788 788
789 zfcp_erp_action_to_ready(erp_action); 789 zfcp_erp_action_to_ready(erp_action);
790 up(&adapter->erp_ready_sem); 790 up(&adapter->erp_ready_sem);
791 zfcp_rec_dbf_event_thread(2, adapter, 0);
791} 792}
792 793
793/* 794/*
@@ -1027,6 +1028,7 @@ zfcp_erp_thread_kill(struct zfcp_adapter *adapter)
1027 1028
1028 atomic_set_mask(ZFCP_STATUS_ADAPTER_ERP_THREAD_KILL, &adapter->status); 1029 atomic_set_mask(ZFCP_STATUS_ADAPTER_ERP_THREAD_KILL, &adapter->status);
1029 up(&adapter->erp_ready_sem); 1030 up(&adapter->erp_ready_sem);
1031 zfcp_rec_dbf_event_thread(2, adapter, 1);
1030 1032
1031 wait_event(adapter->erp_thread_wqh, 1033 wait_event(adapter->erp_thread_wqh,
1032 !atomic_test_mask(ZFCP_STATUS_ADAPTER_ERP_THREAD_UP, 1034 !atomic_test_mask(ZFCP_STATUS_ADAPTER_ERP_THREAD_UP,
@@ -1084,7 +1086,9 @@ zfcp_erp_thread(void *data)
1084 * no action in 'ready' queue to be processed and 1086 * no action in 'ready' queue to be processed and
1085 * thread is not to be killed 1087 * thread is not to be killed
1086 */ 1088 */
1089 zfcp_rec_dbf_event_thread(4, adapter, 1);
1087 down_interruptible(&adapter->erp_ready_sem); 1090 down_interruptible(&adapter->erp_ready_sem);
1091 zfcp_rec_dbf_event_thread(5, adapter, 1);
1088 debug_text_event(adapter->erp_dbf, 5, "a_th_woken"); 1092 debug_text_event(adapter->erp_dbf, 5, "a_th_woken");
1089 } 1093 }
1090 1094
@@ -2150,7 +2154,9 @@ zfcp_erp_adapter_strategy_open_fsf_xconfig(struct zfcp_erp_action *erp_action)
2150 * _must_ be the one belonging to the 'exchange config 2154 * _must_ be the one belonging to the 'exchange config
2151 * data' request. 2155 * data' request.
2152 */ 2156 */
2157 zfcp_rec_dbf_event_thread(6, adapter, 1);
2153 down(&adapter->erp_ready_sem); 2158 down(&adapter->erp_ready_sem);
2159 zfcp_rec_dbf_event_thread(7, adapter, 1);
2154 if (erp_action->status & ZFCP_STATUS_ERP_TIMEDOUT) { 2160 if (erp_action->status & ZFCP_STATUS_ERP_TIMEDOUT) {
2155 ZFCP_LOG_INFO("error: exchange of configuration data " 2161 ZFCP_LOG_INFO("error: exchange of configuration data "
2156 "for adapter %s timed out\n", 2162 "for adapter %s timed out\n",
@@ -2207,7 +2213,9 @@ zfcp_erp_adapter_strategy_open_fsf_xport(struct zfcp_erp_action *erp_action)
2207 debug_text_event(adapter->erp_dbf, 6, "a_xport_ok"); 2213 debug_text_event(adapter->erp_dbf, 6, "a_xport_ok");
2208 2214
2209 ret = ZFCP_ERP_SUCCEEDED; 2215 ret = ZFCP_ERP_SUCCEEDED;
2216 zfcp_rec_dbf_event_thread(8, adapter, 1);
2210 down(&adapter->erp_ready_sem); 2217 down(&adapter->erp_ready_sem);
2218 zfcp_rec_dbf_event_thread(9, adapter, 1);
2211 if (erp_action->status & ZFCP_STATUS_ERP_TIMEDOUT) { 2219 if (erp_action->status & ZFCP_STATUS_ERP_TIMEDOUT) {
2212 ZFCP_LOG_INFO("error: exchange port data timed out (adapter " 2220 ZFCP_LOG_INFO("error: exchange port data timed out (adapter "
2213 "%s)\n", zfcp_get_busid_by_adapter(adapter)); 2221 "%s)\n", zfcp_get_busid_by_adapter(adapter));
@@ -3091,6 +3099,7 @@ zfcp_erp_action_enqueue(int action,
3091 /* finally put it into 'ready' queue and kick erp thread */ 3099 /* finally put it into 'ready' queue and kick erp thread */
3092 list_add_tail(&erp_action->list, &adapter->erp_ready_head); 3100 list_add_tail(&erp_action->list, &adapter->erp_ready_head);
3093 up(&adapter->erp_ready_sem); 3101 up(&adapter->erp_ready_sem);
3102 zfcp_rec_dbf_event_thread(1, adapter, 0);
3094 retval = 0; 3103 retval = 0;
3095 out: 3104 out:
3096 return retval; 3105 return retval;