scsi: ipr: System hung while dlpar adding primary ipr adapter back
While dlpar adding primary ipr adapter back, driver goes through adapter initialization then schedule ipr_worker_thread to start te disk scan by dropping the host lock, calling scsi_add_device. Then get the adapter reset request again, so driver does scsi_block_requests, this will cause the scsi_add_device get hung until we unblock. But we can't run ipr_worker_thread to do the unblock because its stuck in scsi_add_device. This patch fixes the issue. [mkp: typo and whitespace fixes] Signed-off-by: Wen Xiong <wenxiong@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:

committed by
Martin K. Petersen

parent
8c39e2699f
commit
318ddb34b2
@@ -1575,6 +1575,7 @@ struct ipr_ioa_cfg {
|
||||
u8 saved_mode_page_len;
|
||||
|
||||
struct work_struct work_q;
|
||||
struct work_struct scsi_add_work_q;
|
||||
struct workqueue_struct *reset_work_q;
|
||||
|
||||
wait_queue_head_t reset_wait_q;
|
||||
|
Reference in New Issue
Block a user