diff options
author | Wolfram Sang <wsa@the-dreams.de> | 2020-01-15 20:31:37 +0300 |
---|---|---|
committer | Wolfram Sang <wsa@the-dreams.de> | 2020-01-15 20:31:37 +0300 |
commit | d02e5ee09bd98b8cec9c2e26b486ed4d6d1b7e2a (patch) | |
tree | 7cb6fa45fd1cb4bdad89c7b7832a72df893c838c /drivers/net/xen-netback/interface.c | |
parent | 9f7a03642e0e25dc0561be124bddae2b8ed787ab (diff) | |
parent | 24a49678f5e20f18006e71b90ac1531876b27eb1 (diff) | |
download | linux-d02e5ee09bd98b8cec9c2e26b486ed4d6d1b7e2a.tar.xz |
Merge branch 'i2c/for-current' into i2c/for-5.6
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); } |