diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/core/dev.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index 93e44dbf679..4c907895876 100644 --- a/net/core/dev.c +++ b/net/core/dev.c | |||
@@ -2563,7 +2563,8 @@ static int get_rps_cpu(struct net_device *dev, struct sk_buff *skb, | |||
2563 | 2563 | ||
2564 | map = rcu_dereference(rxqueue->rps_map); | 2564 | map = rcu_dereference(rxqueue->rps_map); |
2565 | if (map) { | 2565 | if (map) { |
2566 | if (map->len == 1) { | 2566 | if (map->len == 1 && |
2567 | !rcu_dereference_raw(rxqueue->rps_flow_table)) { | ||
2567 | tcpu = map->cpus[0]; | 2568 | tcpu = map->cpus[0]; |
2568 | if (cpu_online(tcpu)) | 2569 | if (cpu_online(tcpu)) |
2569 | cpu = tcpu; | 2570 | cpu = tcpu; |