diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2011-02-05 15:49:57 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2011-02-05 15:50:05 -0500 |
commit | 285c1a2c3a5f84ce1c811ab4cb1f8a17466e1a06 (patch) | |
tree | 7eb4aeab927a25b6cc82aef21ffd5a4f4866ae4b /net/core/dev.c | |
parent | 1fb0ef31f428f345a7c3666f8e7444a563edd537 (diff) | |
parent | a9fe8d5fd52ecd17c3f3970bbcf6b3573f831898 (diff) |
Merge branch 'irq/urgent' into irq/core
Reason: Get mainline fixes integrated. Further patches conflict with
them
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'net/core/dev.c')
-rw-r--r-- | net/core/dev.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index 7c6a46f8037..b6d0bf875a8 100644 --- a/net/core/dev.c +++ b/net/core/dev.c | |||
@@ -749,7 +749,8 @@ EXPORT_SYMBOL(dev_get_by_index); | |||
749 | * @ha: hardware address | 749 | * @ha: hardware address |
750 | * | 750 | * |
751 | * Search for an interface by MAC address. Returns NULL if the device | 751 | * Search for an interface by MAC address. Returns NULL if the device |
752 | * is not found or a pointer to the device. The caller must hold RCU | 752 | * is not found or a pointer to the device. |
753 | * The caller must hold RCU or RTNL. | ||
753 | * The returned device has not had its ref count increased | 754 | * The returned device has not had its ref count increased |
754 | * and the caller must therefore be careful about locking | 755 | * and the caller must therefore be careful about locking |
755 | * | 756 | * |
@@ -2562,7 +2563,8 @@ static int get_rps_cpu(struct net_device *dev, struct sk_buff *skb, | |||
2562 | 2563 | ||
2563 | map = rcu_dereference(rxqueue->rps_map); | 2564 | map = rcu_dereference(rxqueue->rps_map); |
2564 | if (map) { | 2565 | if (map) { |
2565 | if (map->len == 1) { | 2566 | if (map->len == 1 && |
2567 | !rcu_dereference_raw(rxqueue->rps_flow_table)) { | ||
2566 | tcpu = map->cpus[0]; | 2568 | tcpu = map->cpus[0]; |
2567 | if (cpu_online(tcpu)) | 2569 | if (cpu_online(tcpu)) |
2568 | cpu = tcpu; | 2570 | cpu = tcpu; |
@@ -3423,6 +3425,8 @@ static void napi_reuse_skb(struct napi_struct *napi, struct sk_buff *skb) | |||
3423 | __skb_pull(skb, skb_headlen(skb)); | 3425 | __skb_pull(skb, skb_headlen(skb)); |
3424 | skb_reserve(skb, NET_IP_ALIGN - skb_headroom(skb)); | 3426 | skb_reserve(skb, NET_IP_ALIGN - skb_headroom(skb)); |
3425 | skb->vlan_tci = 0; | 3427 | skb->vlan_tci = 0; |
3428 | skb->dev = napi->dev; | ||
3429 | skb->skb_iif = 0; | ||
3426 | 3430 | ||
3427 | napi->skb = skb; | 3431 | napi->skb = skb; |
3428 | } | 3432 | } |