Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 266885
b: refs/heads/master
c: e049f28
h: refs/heads/master
i:
  266883: f8db794
v: v3
  • Loading branch information
roy.qing.li@gmail.com authored and David S. Miller committed Oct 19, 2011
1 parent 9881ecb commit 041c413
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 4f25af27827080c3163e59c7af1ca84a05ce121c
refs/heads/master: e049f28883126c689cf95859480d9ee4ab23b7fa
4 changes: 4 additions & 0 deletions trunk/net/core/neighbour.c
Original file line number Diff line number Diff line change
Expand Up @@ -1168,10 +1168,14 @@ int neigh_update(struct neighbour *neigh, const u8 *lladdr, u8 new,
struct dst_entry *dst = skb_dst(skb);
struct neighbour *n2, *n1 = neigh;
write_unlock_bh(&neigh->lock);

rcu_read_lock();
/* On shaper/eql skb->dst->neighbour != neigh :( */
if (dst && (n2 = dst_get_neighbour(dst)) != NULL)
n1 = n2;
n1->output(n1, skb);
rcu_read_unlock();

write_lock_bh(&neigh->lock);
}
skb_queue_purge(&neigh->arp_queue);
Expand Down

0 comments on commit 041c413

Please sign in to comment.