diff options
Diffstat (limited to 'drivers/s390/net/lcs.c')
-rw-r--r-- | drivers/s390/net/lcs.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/s390/net/lcs.c b/drivers/s390/net/lcs.c index f8dfd70a89d9..5e46415d3e13 100644 --- a/drivers/s390/net/lcs.c +++ b/drivers/s390/net/lcs.c | |||
@@ -2130,8 +2130,12 @@ lcs_new_device(struct ccwgroup_device *ccwgdev) | |||
2130 | card->write.ccwdev = ccwgdev->cdev[1]; | 2130 | card->write.ccwdev = ccwgdev->cdev[1]; |
2131 | 2131 | ||
2132 | recover_state = card->state; | 2132 | recover_state = card->state; |
2133 | ccw_device_set_online(card->read.ccwdev); | 2133 | rc = ccw_device_set_online(card->read.ccwdev); |
2134 | ccw_device_set_online(card->write.ccwdev); | 2134 | if (rc) |
2135 | goto out_err; | ||
2136 | rc = ccw_device_set_online(card->write.ccwdev); | ||
2137 | if (rc) | ||
2138 | goto out_werr; | ||
2135 | 2139 | ||
2136 | LCS_DBF_TEXT(3, setup, "lcsnewdv"); | 2140 | LCS_DBF_TEXT(3, setup, "lcsnewdv"); |
2137 | 2141 | ||
@@ -2210,8 +2214,10 @@ netdev_out: | |||
2210 | return 0; | 2214 | return 0; |
2211 | out: | 2215 | out: |
2212 | 2216 | ||
2213 | ccw_device_set_offline(card->read.ccwdev); | ||
2214 | ccw_device_set_offline(card->write.ccwdev); | 2217 | ccw_device_set_offline(card->write.ccwdev); |
2218 | out_werr: | ||
2219 | ccw_device_set_offline(card->read.ccwdev); | ||
2220 | out_err: | ||
2215 | return -ENODEV; | 2221 | return -ENODEV; |
2216 | } | 2222 | } |
2217 | 2223 | ||