Commit 9fb3cd86 authored by Swen Schillig's avatar Swen Schillig Committed by James Bottomley

[SCSI] zfcp: fix erp list usage without using locks

The zfcp_erp_thread was using the nolock version of the dbf function.
This resulted in a list access while other tasks could modifying the
list. The symptom was an erp thread running at 100% CPU and never
returning from the dbf function.
Signed-off-by: default avatarSwen Schillig <swen@vnet.ibm.com>
Signed-off-by: default avatarChristof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
parent e4e9ba5d
...@@ -1395,9 +1395,9 @@ static int zfcp_erp_thread(void *data) ...@@ -1395,9 +1395,9 @@ static int zfcp_erp_thread(void *data)
zfcp_erp_wakeup(adapter); zfcp_erp_wakeup(adapter);
} }
zfcp_rec_dbf_event_thread(4, adapter); zfcp_rec_dbf_event_thread_lock(4, adapter);
down_interruptible(&adapter->erp_ready_sem); down_interruptible(&adapter->erp_ready_sem);
zfcp_rec_dbf_event_thread(5, adapter); zfcp_rec_dbf_event_thread_lock(5, adapter);
} }
atomic_clear_mask(ZFCP_STATUS_ADAPTER_ERP_THREAD_UP, &adapter->status); atomic_clear_mask(ZFCP_STATUS_ADAPTER_ERP_THREAD_UP, &adapter->status);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment