net: NULL the old xps map entries when freeing them
authorAntoine Tenart <atenart@kernel.org>
Thu, 18 Mar 2021 18:37:52 +0000 (19:37 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 18 Mar 2021 21:56:22 +0000 (14:56 -0700)
In __netif_set_xps_queue, old map entries from the old dev_maps are
freed but their corresponding entry in the old dev_maps aren't NULLed.
Fix this.

Signed-off-by: Antoine Tenart <atenart@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dev.c

index d5f6ba2..4961fc2 100644 (file)
@@ -2764,6 +2764,7 @@ int __netif_set_xps_queue(struct net_device *dev, const unsigned long *mask,
                                        continue;
                        }
 
+                       RCU_INIT_POINTER(dev_maps->attr_map[tci], NULL);
                        kfree_rcu(map, rcu);
                }
        }