[patch 47/52] [PATCH] cio: handle failed disable_subchannel after device recognition

Martin Schwidefsky
2009-11-13T15:10:27Z

[-- Attachment #1: 146-cio-failed-disable-subchannel.diff --]
[-- Type: text/plain, Size: 1037 bytes --]

From: Sebastian Ott <sebott@linux.vnet.ibm.com>

Handle a failing cio_disable_subchannel at the end of our device
recognition as if the recognition itself failed. This way
subsequent registration steps do not need to handle enabled
subchannels.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---

drivers/s390/cio/device_fsm.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Index: quilt-2.6/drivers/s390/cio/device_fsm.c
===================================================================
--- quilt-2.6.orig/drivers/s390/cio/device_fsm.c 2009-11-13 16:08:22.000000000 +0100
+++ quilt-2.6/drivers/s390/cio/device_fsm.c 2009-11-13 16:08:22.000000000 +0100
@@ -229,7 +229,8 @@

sch = to_subchannel(cdev->dev.parent);

- cio_disable_subchannel(sch);
+ if (cio_disable_subchannel(sch))
+ state = DEV_STATE_NOT_OPER;
/*
* Now that we tried recognition, we have performed device selection
* through ssch() and the path information is up to date.