]> git.baikalelectronics.ru Git - kernel.git/commit
[S390] qdio: Repair timeout handling for qdio_shutdown
authorUrsula Braun <braunu@de.ibm.com>
Mon, 14 Jul 2008 07:57:25 +0000 (09:57 +0200)
committerHeiko Carstens <heiko.carstens@de.ibm.com>
Mon, 14 Jul 2008 08:01:59 +0000 (10:01 +0200)
commit7767b260f8f8b6bbcfea10cb4567fc79e6af3e41
treed5d1c3fb50c9ef53dedf5cafcd69b7b0214176be
parentc9ccd3980c40f5a4ebe5eeec275eec55e7915b3b
[S390] qdio: Repair timeout handling for qdio_shutdown

If qdio shutdown runs in parallel with a channel error,
the qdio_timeout_handler might not be triggered.
In this case neither state INACTIVE nor state ERR
is reached and the following wait_event hangs forever.
Solution: do not make use of ccw_device_set_timeout(),
but add a timeout to the following wait_event.
And make sure, wake_up is called in case of an
i/o error on the qdio-device.

Signed-off-by: Ursula Braun <braunu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
drivers/s390/cio/qdio.c