linux/drivers/s390
Christof Schmitt 6071d7ec36 [SCSI] zfcp: Remove zfcp_erp_wait from slave destory handler to fix deadlock
The testcase
# chchp -v 0 0.da && sleep 59 && chchp -v 1 0.da
results in this deadlock situation:

STACK TRACE FOR TASK: 0x7e9a2048 (zfcperp0.0.c613)
0 schedule+816 [0x356b3c]
1 schedule_timeout+172 [0x357340]
2 wait_for_common+192 [0x3565fc]
3 flush_cpu_workqueue+116 [0x52af0]
4 flush_workqueue+116 [0x533b8]
5 fc_remote_port_add+64 [0x1c83ec]
6 zfcp_erp_thread+4534 [0x26585a]
7 kernel_thread_starter+6 [0x195d2]

STACK TRACE FOR TASK: 0x7f8ec048 (fc_wq_0)
0 schedule+816 [0x356b3c]
1 zfcp_erp_wait+104 [0x264568]
2 zfcp_scsi_slave_destroy+64 [0x261b24]
3 __scsi_remove_device+154 [0x1c24ba]
4 scsi_remove_device+62 [0x1c2512]
5 __scsi_remove_target+198 [0x1c25ea]
6 __remove_child+58 [0x1c26d6]
7 device_for_each_child+66 [0x1ab566]
8 scsi_remove_target+98 [0x1c268a]
9 run_workqueue+200 [0x5272c]
10 worker_thread+146 [0x52882]
11 kthread+140 [0x58360]
12 kernel_thread_starter+6 [0x195d2]

Remove the zfcp_erp_wait call that is not required here to prevent the
deadlock situation.

Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: Martin Peschke <mp3@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
2008-04-18 11:50:30 -05:00
..
block [S390] dasd: fix reference counting in display method for proc/dasd/devices 2008-03-05 12:37:18 +01:00
char [S390] sclp_vt220: speed up console output for interactive work 2008-03-05 12:37:18 +01:00
cio [S390] qdio: FCP/SCSI write I/O stagnates on LPAR 2008-02-19 15:29:35 +01:00
crypto [S390] zcrypt: fix ap_device_list handling 2008-03-05 12:37:19 +01:00
net claw: make use of DIV_ROUND_UP 2008-02-23 23:57:45 -05:00
scsi [SCSI] zfcp: Remove zfcp_erp_wait from slave destory handler to fix deadlock 2008-04-18 11:50:30 -05:00
ebcdic.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile [S390] Calibrate delay and bogomips. 2007-02-05 21:18:31 +01:00
s390_rdev.c [PATCH] s390: kzalloc() conversion in drivers/s390 2006-03-24 07:33:18 -08:00
s390mach.c [S390] cio: replace subchannel evaluation queue with bitmap 2007-04-27 16:01:40 +02:00
s390mach.h [S390] ETR support. 2007-02-05 21:18:19 +01:00
sysinfo.c calibrate_delay() must be __cpuinit 2008-02-06 10:41:08 -08:00