]> git.baikalelectronics.ru Git - kernel.git/commit
[S390] cio: fix quiesce state
authorSebastian Ott <sebott@linux.vnet.ibm.com>
Mon, 7 Dec 2009 11:51:35 +0000 (12:51 +0100)
committerMartin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com>
Mon, 7 Dec 2009 11:51:32 +0000 (12:51 +0100)
commit7389d89b19e555fcd3fdef417b38eebd1515b352
treef0c75986905f3ff01ec1c801843f94923509af06
parentb5aa55625301add862c8561aaffdd0160ab30ffd
[S390] cio: fix quiesce state

DEV_STATE_QUIESCE is used to stop all IO on a busy subchannel.
This patch fixes the following problems related to the QUIESCE
state:

* Fix a potential race condition which could occur when the
resulting state was DEV_STATE_OFFLINE.

* Add missing locking around cio_disable_subchannel,
ccw_device_cancel_halt_clear and the cdev's handler.

* Loop until we know for sure that the subchannel is disabled.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/cio/device.c
drivers/s390/cio/device_fsm.c