xen-netfront: fix oops when disconnected from backend
xennet_disconnect_backend() was not correctly iterating over all the queues. Signed-off-by: David Vrabel <david.vrabel@citrix.com> Reviewed-by: Wei Liu <wei.liu2@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
a705a906c6
commit
765418694b
|
@ -1437,10 +1437,11 @@ static void xennet_end_access(int ref, void *page)
|
|||
static void xennet_disconnect_backend(struct netfront_info *info)
|
||||
{
|
||||
unsigned int i = 0;
|
||||
struct netfront_queue *queue = NULL;
|
||||
unsigned int num_queues = info->netdev->real_num_tx_queues;
|
||||
|
||||
for (i = 0; i < num_queues; ++i) {
|
||||
struct netfront_queue *queue = &info->queues[i];
|
||||
|
||||
/* Stop old i/f to prevent errors whilst we rebuild the state. */
|
||||
spin_lock_bh(&queue->rx_lock);
|
||||
spin_lock_irq(&queue->tx_lock);
|
||||
|
|
Loading…
Reference in New Issue