1
0
Fork 0
alistair23-linux/drivers/s390/cio
Peter Oberparleiter 56e25e9777 [S390] cio: prevent workqueue deadlock
Subchannel reprobing can block the kslowcrw workqueue indefinitely
while waiting for device recognition to finish which is also scheduled
to run on kslowcrw. Prevent this deadlock by moving the waiting
portion of subchannel reprobing to the cio workqueue.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2009-03-26 15:24:18 +01:00
..
Makefile [S390] split/move machine check handler code 2009-03-26 15:24:10 +01:00
airq.c [S390] cio: airq - fix array boundary 2009-03-26 15:24:14 +01:00
blacklist.c [S390] cio: fix wrong buffer access in cio_ignore_write 2009-03-26 15:24:16 +01:00
blacklist.h [PATCH] s390: multiple subchannel sets support 2006-01-06 08:33:52 -08:00
ccwgroup.c [S390] cio: ccw group fix unbind behaviour. 2009-03-26 15:24:16 +01:00
chp.c [S390] split/move machine check handler code 2009-03-26 15:24:10 +01:00
chp.h [S390] cio: Repair chpid event handling. 2008-07-14 10:02:11 +02:00
chsc.c [S390] cio: fix rc generation after chsc call 2009-03-26 15:24:16 +01:00
chsc.h [S390] cio: Export chsc_error_from_response(). 2008-07-17 17:22:10 +02:00
chsc_sch.c [S390] cio: introduce cio_update_schib 2008-12-25 13:39:10 +01:00
chsc_sch.h [S390] cio: Add chsc subchannel driver. 2008-07-14 10:02:12 +02:00
cio.c [S390] cio: Try harder to disable subchannel. 2009-03-26 15:24:12 +01:00
cio.h [S390] cio: introduce cio_commit_config 2008-12-25 13:39:10 +01:00
cio_debug.h [S390] cio: Remove cio_msg kernel parameter. 2008-05-07 09:23:01 +02:00
cmf.c [S390] convert cio printks to pr_xxx macros. 2008-12-25 13:39:20 +01:00
crw.c [S390] cio/crw: add/fix locking 2009-03-26 15:24:13 +01:00
css.c [S390] cio: prevent workqueue deadlock 2009-03-26 15:24:18 +01:00
css.h [S390] cio: Add chsc subchannel driver. 2008-07-14 10:02:12 +02:00
device.c [S390] cio: remove unused local variable 2009-03-26 15:24:17 +01:00
device.h [S390] cio: Use unbind/bind instead of unregister/register. 2009-03-26 15:24:12 +01:00
device_fsm.c [S390] cio: Use ccw_device_set_notoper(). 2009-03-26 15:24:13 +01:00
device_id.c [S390] cio: provide functions for fcx enabled I/O 2008-07-14 10:02:08 +02:00
device_ops.c [S390] cio: incorrect status check in interrogate function 2009-03-26 15:24:17 +01:00
device_pgid.c [S390] cio: introduce cio_update_schib 2008-12-25 13:39:10 +01:00
device_status.c [S390] cio: introduce cio_update_schib 2008-12-25 13:39:10 +01:00
fcx.c [S390] cio: provide functions for fcx enabled I/O 2008-07-14 10:02:08 +02:00
idset.c [S390] cio: Memory allocation for idset changed. 2008-08-01 16:39:31 +02:00
idset.h [S390] cio: Add chsc subchannel driver. 2008-07-14 10:02:12 +02:00
io_sch.h [S390] cio: inline assembly cleanup 2008-10-10 21:33:53 +02:00
ioasm.h [S390] cio: inline assembly cleanup 2008-10-10 21:33:53 +02:00
isc.c [S390] cio: introduce isc_(un)register functions. 2008-07-14 10:02:11 +02:00
itcw.c [S390] cio: provide helper functions for fcx enabled I/O 2008-07-14 10:02:08 +02:00
qdio.h [S390] qdio: fix error reporting for hipersockets 2008-12-25 13:39:00 +01:00
qdio_debug.c [S390] qdio: fix broken pointer in case of CONFIG_DEBUG_FS is disabled 2009-01-09 12:15:07 +01:00
qdio_debug.h [S390] qdio: rework debug feature logging 2008-12-25 13:38:59 +01:00
qdio_main.c fix similar typos to successfull 2009-01-08 08:31:15 -08:00
qdio_perf.c [S390] qdio: improve inbound buffer acknowledgement 2008-12-25 13:38:59 +01:00
qdio_perf.h [S390] qdio: improve inbound buffer acknowledgement 2008-12-25 13:38:59 +01:00
qdio_setup.c [S390] qdio: fix error reporting for hipersockets 2008-12-25 13:39:00 +01:00
qdio_thinint.c [S390] qdio: improve inbound buffer acknowledgement 2008-12-25 13:38:59 +01:00
scsw.c [S390] cio: introduce fcx enabled scsw format 2008-07-14 10:02:07 +02:00