Commit bf42d40b authored by Julian Wiedmann's avatar Julian Wiedmann Committed by David S. Miller

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: default avatarJulian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 464e86da
...@@ -1002,7 +1002,6 @@ int qeth_set_access_ctrl_online(struct qeth_card *card, int fallback); ...@@ -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_configure_cq(struct qeth_card *, enum qeth_cq);
int qeth_hw_trap(struct qeth_card *, enum qeth_diags_trap_action); int qeth_hw_trap(struct qeth_card *, enum qeth_diags_trap_action);
void qeth_trace_features(struct qeth_card *); 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); int qeth_setassparms_cb(struct qeth_card *, struct qeth_reply *, unsigned long);
struct qeth_cmd_buffer *qeth_get_setassparms_cmd(struct qeth_card *, struct qeth_cmd_buffer *qeth_get_setassparms_cmd(struct qeth_card *,
enum qeth_ipa_funcs, enum qeth_ipa_funcs,
......
...@@ -92,12 +92,11 @@ static void qeth_close_dev_handler(struct work_struct *work) ...@@ -92,12 +92,11 @@ static void qeth_close_dev_handler(struct work_struct *work)
ccwgroup_set_offline(card->gdev); 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"); QETH_CARD_TEXT(card, 2, "cldevsubm");
queue_work(qeth_wq, &card->close_dev_work); queue_work(qeth_wq, &card->close_dev_work);
} }
EXPORT_SYMBOL_GPL(qeth_close_dev);
static const char *qeth_get_cardname(struct qeth_card *card) static const char *qeth_get_cardname(struct qeth_card *card)
{ {
......
...@@ -960,7 +960,7 @@ static int qeth_l2_recover(void *ptr) ...@@ -960,7 +960,7 @@ static int qeth_l2_recover(void *ptr)
dev_info(&card->gdev->dev, dev_info(&card->gdev->dev,
"Device successfully recovered!\n"); "Device successfully recovered!\n");
else { else {
qeth_close_dev(card); ccwgroup_set_offline(card->gdev);
dev_warn(&card->gdev->dev, "The qeth device driver " dev_warn(&card->gdev->dev, "The qeth device driver "
"failed to recover an error on the device\n"); "failed to recover an error on the device\n");
} }
......
...@@ -2459,7 +2459,7 @@ static int qeth_l3_recover(void *ptr) ...@@ -2459,7 +2459,7 @@ static int qeth_l3_recover(void *ptr)
dev_info(&card->gdev->dev, dev_info(&card->gdev->dev,
"Device successfully recovered!\n"); "Device successfully recovered!\n");
else { else {
qeth_close_dev(card); ccwgroup_set_offline(card->gdev);
dev_warn(&card->gdev->dev, "The qeth device driver " dev_warn(&card->gdev->dev, "The qeth device driver "
"failed to recover an error on the device\n"); "failed to recover an error on the device\n");
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment