diff options
author | Jan Glauber <jang@linux.vnet.ibm.com> | 2009-03-26 10:24:25 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2009-03-26 10:24:20 -0400 |
commit | e4c14e2085cd32f61e9ffc47d5b20d4f5f7639f3 (patch) | |
tree | d20047f2f8424dfc15238e562402e931fc49ba07 /drivers/s390 | |
parent | b454740246d14b0a9c00220696f9020eaa15ca12 (diff) |
[S390] qdio: Dont call qdio_shutdown in case qdio_activate fails
Remove the call to qdio_shutdown from qdio_activate since the upper-layer
drivers are responsible to call qdio_shutdown when qdio_activate returns
with an error.
Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/cio/qdio_main.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/s390/cio/qdio_main.c b/drivers/s390/cio/qdio_main.c index 5100996201d1..fa902703996c 100644 --- a/drivers/s390/cio/qdio_main.c +++ b/drivers/s390/cio/qdio_main.c | |||
@@ -1404,9 +1404,8 @@ int qdio_activate(struct ccw_device *cdev) | |||
1404 | switch (irq_ptr->state) { | 1404 | switch (irq_ptr->state) { |
1405 | case QDIO_IRQ_STATE_STOPPED: | 1405 | case QDIO_IRQ_STATE_STOPPED: |
1406 | case QDIO_IRQ_STATE_ERR: | 1406 | case QDIO_IRQ_STATE_ERR: |
1407 | mutex_unlock(&irq_ptr->setup_mutex); | 1407 | rc = -EIO; |
1408 | qdio_shutdown(cdev, QDIO_FLAG_CLEANUP_USING_CLEAR); | 1408 | break; |
1409 | return -EIO; | ||
1410 | default: | 1409 | default: |
1411 | qdio_set_state(irq_ptr, QDIO_IRQ_STATE_ACTIVE); | 1410 | qdio_set_state(irq_ptr, QDIO_IRQ_STATE_ACTIVE); |
1412 | rc = 0; | 1411 | rc = 0; |