diff options
author | Julian Wiedmann <jwi@linux.ibm.com> | 2019-02-28 18:59:41 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-02-28 12:55:26 -0800 |
commit | bf42d40b1254afe26015ebdb09d137fb15250fa4 (patch) | |
tree | 1b3d2d6edfb692c4b886a43c72094034575c0fbb /drivers | |
parent | 464e86dafcca14e5f7a7157fc567c58654ec80b3 (diff) | |
download | linux-stable-bf42d40b1254afe26015ebdb09d137fb15250fa4.tar.gz linux-stable-bf42d40b1254afe26015ebdb09d137fb15250fa4.tar.bz2 linux-stable-bf42d40b1254afe26015ebdb09d137fb15250fa4.zip |
s390/qeth: don't defer close_dev work during recovery
The recovery code already runs in a kthread, we don't have to defer the
offlining further.
Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/s390/net/qeth_core.h | 1 | ||||
-rw-r--r-- | drivers/s390/net/qeth_core_main.c | 3 | ||||
-rw-r--r-- | drivers/s390/net/qeth_l2_main.c | 2 | ||||
-rw-r--r-- | drivers/s390/net/qeth_l3_main.c | 2 |
4 files changed, 3 insertions, 5 deletions
diff --git a/drivers/s390/net/qeth_core.h b/drivers/s390/net/qeth_core.h index 79de890010c7..8c354cdc86c0 100644 --- a/drivers/s390/net/qeth_core.h +++ b/drivers/s390/net/qeth_core.h @@ -1002,7 +1002,6 @@ int qeth_set_access_ctrl_online(struct qeth_card *card, int fallback); int qeth_configure_cq(struct qeth_card *, enum qeth_cq); int qeth_hw_trap(struct qeth_card *, enum qeth_diags_trap_action); void qeth_trace_features(struct qeth_card *); -void qeth_close_dev(struct qeth_card *); int qeth_setassparms_cb(struct qeth_card *, struct qeth_reply *, unsigned long); struct qeth_cmd_buffer *qeth_get_setassparms_cmd(struct qeth_card *, enum qeth_ipa_funcs, diff --git a/drivers/s390/net/qeth_core_main.c b/drivers/s390/net/qeth_core_main.c index a1a66467b06b..6c2540e3247b 100644 --- a/drivers/s390/net/qeth_core_main.c +++ b/drivers/s390/net/qeth_core_main.c @@ -92,12 +92,11 @@ static void qeth_close_dev_handler(struct work_struct *work) ccwgroup_set_offline(card->gdev); } -void qeth_close_dev(struct qeth_card *card) +static void qeth_close_dev(struct qeth_card *card) { QETH_CARD_TEXT(card, 2, "cldevsubm"); queue_work(qeth_wq, &card->close_dev_work); } -EXPORT_SYMBOL_GPL(qeth_close_dev); static const char *qeth_get_cardname(struct qeth_card *card) { diff --git a/drivers/s390/net/qeth_l2_main.c b/drivers/s390/net/qeth_l2_main.c index a42285b1daa3..f34fe983012c 100644 --- a/drivers/s390/net/qeth_l2_main.c +++ b/drivers/s390/net/qeth_l2_main.c @@ -960,7 +960,7 @@ static int qeth_l2_recover(void *ptr) dev_info(&card->gdev->dev, "Device successfully recovered!\n"); else { - qeth_close_dev(card); + ccwgroup_set_offline(card->gdev); dev_warn(&card->gdev->dev, "The qeth device driver " "failed to recover an error on the device\n"); } diff --git a/drivers/s390/net/qeth_l3_main.c b/drivers/s390/net/qeth_l3_main.c index 13d77957404c..d424a6704811 100644 --- a/drivers/s390/net/qeth_l3_main.c +++ b/drivers/s390/net/qeth_l3_main.c @@ -2459,7 +2459,7 @@ static int qeth_l3_recover(void *ptr) dev_info(&card->gdev->dev, "Device successfully recovered!\n"); else { - qeth_close_dev(card); + ccwgroup_set_offline(card->gdev); dev_warn(&card->gdev->dev, "The qeth device driver " "failed to recover an error on the device\n"); } |