[S390] cio: prevent purging of CCW devices in the online state
authorPeter Oberparleiter <peter.oberparleiter@de.ibm.com>
Mon, 4 Apr 2011 07:43:32 +0000 (09:43 +0200)
committerMartin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com>
Mon, 4 Apr 2011 07:43:33 +0000 (09:43 +0200)
commita2fc8485f838ccd2ce5db690f81ac086489a9e7e
tree9cc51125c5cbbd66344a09d114897d668b750bcc
parentaa5c8df398266a141fb5ff0e77cbc7904a3e0648
[S390] cio: prevent purging of CCW devices in the online state

The cio_ignore purge function is intended to only remove CCW devices
which are in the offline state. There is a time frame after the purge
function finished where a CCW device is scheduled for removal but
still accessible. When the device is set online during this time
frame, it may first appear online before it is then removed.

Fix this by preventing that CCW devices can be set online while there
is work (such as removal triggered by the purge function) for it
pending. Also ensure that the purge function does not schedule devices
for removal which are in the process of being set online.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/cio/device.c