net: Fix a bug in removing queues from XPS map
authorAmritha Nambiar <amritha.nambiar@intel.com>
Thu, 17 May 2018 21:50:44 +0000 (14:50 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 18 May 2018 16:06:22 +0000 (12:06 -0400)
While removing queues from the XPS map, the individual CPU ID
alone was used to index the CPUs map, this should be changed to also
factor in the traffic class mapping for the CPU-to-queue lookup.

Fixes: 184c449f91fe ("net: Add support for XPS with QoS via traffic classes")
Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com>
Acked-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dev.c

index af0558b00c6c7d5831d0b9e5281d2d327e9773a5..2af787e8b1303a4257b738ccbfc76801e6cbc6d5 100644 (file)
@@ -2124,7 +2124,7 @@ static bool remove_xps_queue_cpu(struct net_device *dev,
                int i, j;
 
                for (i = count, j = offset; i--; j++) {
-                       if (!remove_xps_queue(dev_maps, cpu, j))
+                       if (!remove_xps_queue(dev_maps, tci, j))
                                break;
                }