]> Pileus Git - ~andy/linux/blobdiff - net/core/dev.c
Merge branch 'devicetree/next' into spi/next
[~andy/linux] / net / core / dev.c
index 93e44dbf6793f1aff31da27ecaef19cf86e38aba..b6d0bf875a8ef59b7291d0981aefd7629cd48080 100644 (file)
@@ -2563,7 +2563,8 @@ static int get_rps_cpu(struct net_device *dev, struct sk_buff *skb,
 
        map = rcu_dereference(rxqueue->rps_map);
        if (map) {
-               if (map->len == 1) {
+               if (map->len == 1 &&
+                   !rcu_dereference_raw(rxqueue->rps_flow_table)) {
                        tcpu = map->cpus[0];
                        if (cpu_online(tcpu))
                                cpu = tcpu;
@@ -3425,6 +3426,7 @@ static void napi_reuse_skb(struct napi_struct *napi, struct sk_buff *skb)
        skb_reserve(skb, NET_IP_ALIGN - skb_headroom(skb));
        skb->vlan_tci = 0;
        skb->dev = napi->dev;
+       skb->skb_iif = 0;
 
        napi->skb = skb;
 }