diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2020-01-17 08:59:29 +0100 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2020-01-17 08:59:29 +0100 |
commit | 6a77de2596a8d02cbfe9cebe448d8575e4354c9a (patch) | |
tree | 13e7621c147ef1415195213089ce3c2c94590bde /drivers/net/xen-netback/interface.c | |
parent | 59c324683400b41caa6d85b091e812ee3d5415c3 (diff) | |
parent | b3a987b0264d3ddbb24293ebff10eddfc472f653 (diff) |
Merge tag 'v5.5-rc6' into devel
Linux 5.5-rc6
Diffstat (limited to 'drivers/net/xen-netback/interface.c')
-rw-r--r-- | drivers/net/xen-netback/interface.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/drivers/net/xen-netback/interface.c b/drivers/net/xen-netback/interface.c index 68dd7bb07ca6..f15ba3de6195 100644 --- a/drivers/net/xen-netback/interface.c +++ b/drivers/net/xen-netback/interface.c @@ -628,18 +628,6 @@ err: static void xenvif_disconnect_queue(struct xenvif_queue *queue) { - if (queue->tx_irq) { - unbind_from_irqhandler(queue->tx_irq, queue); - if (queue->tx_irq == queue->rx_irq) - queue->rx_irq = 0; - queue->tx_irq = 0; - } - - if (queue->rx_irq) { - unbind_from_irqhandler(queue->rx_irq, queue); - queue->rx_irq = 0; - } - if (queue->task) { kthread_stop(queue->task); queue->task = NULL; @@ -655,6 +643,18 @@ static void xenvif_disconnect_queue(struct xenvif_queue *queue) queue->napi.poll = NULL; } + if (queue->tx_irq) { + unbind_from_irqhandler(queue->tx_irq, queue); + if (queue->tx_irq == queue->rx_irq) + queue->rx_irq = 0; + queue->tx_irq = 0; + } + + if (queue->rx_irq) { + unbind_from_irqhandler(queue->rx_irq, queue); + queue->rx_irq = 0; + } + xenvif_unmap_frontend_data_rings(queue); } |