Documentation/networking/ip-sysctl.txt | 5 -- debian/changelog | 20 +++++++++ drivers/net/bonding/bond_main.c | 9 ++-- include/linux/if_addr.h | 1 include/linux/igmp.h | 2 include/linux/ipv6.h | 2 include/linux/netdevice.h | 3 - include/linux/notifier.h | 2 include/net/addrconf.h | 2 net/core/dev.c | 4 - net/core/dst.c | 2 net/ipv4/devinet.c | 6 ++ net/ipv4/igmp.c | 22 ++++++++++ net/ipv6/addrconf.c | 68 ++++++++++++++++++++------------- net/ipv6/mcast.c | 19 +++++++++ 15 files changed, 129 insertions(+), 38 deletions(-)
New commits: commit bb3ca67a714557c18fc2782eacb695e9d0401736 Author: Stephen Hemminger <[email protected]> Date: Tue Feb 9 14:41:30 2010 -0800 2.6.31-1+vyatta+31 commit bb27cb9460991036cd7a9e5ddbd6c03553f3baec Author: Stephen Hemminger <[email protected]> Date: Tue Feb 9 10:11:20 2010 -0800 Fix IPv6 management of permanent addresses Get rid of addres_flush sysctl (Vyatta unique), and instead do proper DAD on permanent addresses when link is set to admin down. commit 337f5011c7315b14f72e6e54d413f6432050f773 Author: Moni Shoua <[email protected]> Date: Tue Sep 15 02:37:40 2009 -0700 bonding: remap muticast addresses without using dev_close() and dev_open() This patch fixes commit e36b9d16c6a6d0f59803b3ef04ff3c22c3844c10. The approach there is to call dev_close()/dev_open() whenever the device type is changed in order to remap the device IP multicast addresses to HW multicast addresses. This approach suffers from 2 drawbacks: *. It assumes tha the device is UP when calling dev_close(), or otherwise dev_close() has no affect. It is worth to mention that initscripts (Redhat) and sysconfig (Suse) doesn't act the same in this matter. *. dev_close() has other side affects, like deleting entries from the routing table, which might be unnecessary. The fix here is to directly remap the IP multicast addresses to HW multicast addresses for a bonding device that changes its type, and nothing else. Reported-by: Jason Gunthorpe <[email protected]> Signed-off-by: Moni Shoua <[email protected]> Signed-off-by: David S. Miller <[email protected]> (cherry picked from commit 75c78500ddad74b229cd0691496b8549490496a2) commit 7544d5aab497992a587a307067e99032ea313711 Author: Jens Rosenboom <[email protected]> Date: Thu Sep 17 10:24:24 2009 -0700 ipv6: Log the affected address when DAD failure occurs If an interface has multiple addresses, the current message for DAD failure isn't really helpful, so this patch adds the address itself to the printk. Signed-off-by: Jens Rosenboom <[email protected]> Signed-off-by: David S. Miller <[email protected]> (cherry picked from commit 0522fea6505f7b03a82787acdc6ad3066d9b4de3) commit d3ec0e8ec17a7601875f18820807866577f3ed19 Author: Brian Haley <[email protected]> Date: Wed Sep 9 14:41:32 2009 +0000 ipv6: Add IFA_F_DADFAILED flag Add IFA_F_DADFAILED flag to denote an IPv6 address that has failed Duplicate Address Detection, that way tools like /sbin/ip can be more informative. 3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000 inet6 2001:db8::1/64 scope global tentative dadfailed valid_lft forever preferred_lft forever Signed-off-by: Brian Haley <[email protected]> Signed-off-by: David S. Miller <[email protected]> (cherry picked from commit cc411d0bae9c19ec85a150aeab4b08335f5751d1) commit c5eff445787835685104ec600f5a7d2f18afa2ab Author: Eric Dumazet <[email protected]> Date: Mon Feb 8 20:32:40 2010 +0100 dst: call cond_resched() in dst_gc_task() Le lundi 08 février 2010 à 15:32 +0100, Eric Dumazet a écrit : > Le lundi 08 février 2010 à 15:16 +0100, PaweŠStaszewski a écrit : > > > > > > Some day ago after info about route cache i was have also this info: > > > Code: fe 79 4c 00 48 85 db 74 14 48 8b 74 24 10 48 89 ef ff 13 48 83 c3 08 48 > > 83 3b 00 eb ea 48 83 c4 18 5b 5d 41 5c 41 5d 41 5e 41 5f<c3> 55 48 89 f5 53 48 > > 89 fb 48 83 ec 08 48 8b 76 18 48 2b 75 10 > > Call Trace: > > <IRQ> [<ffffffff8126826f>] ? e1000_put_txbuf+0x62/0x74 > > [<ffffffff8126834a>] ? e1000_clean_tx_irq+0xc9/0x235 > > [<ffffffff8126b71b>] ? e1000_clean+0x5c/0x21c > > [<ffffffff812f29a3>] ? net_rx_action+0x71/0x15d > > [<ffffffff81035311>] ? __do_softirq+0xd7/0x196 > > [<ffffffff81002dac>] ? call_softirq+0x1c/0x28 > > [<ffffffff812f768f>] ? dst_gc_task+0x0/0x1a7 > > [<ffffffff81002dac>] ? call_softirq+0x1c/0x28 > > <EOI> [<ffffffff81004599>] ? do_softirq+0x31/0x63 > > [<ffffffff81034ec1>] ? local_bh_enable_ip+0x75/0x86 > > [<ffffffff812f768f>] ? dst_gc_task+0x0/0x1a7 > > [<ffffffff812f775d>] ? dst_gc_task+0xce/0x1a7 > > [<ffffffff8136b08c>] ? schedule+0x82c/0x906 > > [<ffffffff8103c44f>] ? lock_timer_base+0x26/0x4b > > [<ffffffff810a41d6>] ? cache_reap+0x0/0x11d > > [<ffffffff81044c38>] ? worker_thread+0x14c/0x1dc > > [<ffffffff81047dcd>] ? autoremove_wake_function+0x0/0x2e > > [<ffffffff81044aec>] ? worker_thread+0x0/0x1dc > > [<ffffffff810479bd>] ? kthread+0x79/0x81 > > [<ffffffff81002cb4>] ? kernel_thread_helper+0x4/0x10 > > [<ffffffff81047944>] ? kthread+0x0/0x81 > > > > > > [<ffffffff81002cb0>] ? kernel_thread_helper+0x0/0x10 > > > > > > This trace is indeed very interesting, since dst_gc_task() is run from a > work queue, and there is no scheduling point in it. > > We might need add a scheduling point in dst_gc_task() in case huge > number of entries were flushed. > David, here is the patch I sent to Pawel to solve this problem. This probaby is a stable candidate. Thanks [PATCH] dst: call cond_resched() in dst_gc_task() On some workloads, it is quite possible to get a huge dst list to process in dst_gc_task(), and trigger soft lockup detection. Fix is to call cond_resched(), as we run in process context. Reported-by: Pawel Staszewski <[email protected]> Tested-by: Pawel Staszewski <[email protected]> Signed-off-by: Eric Dumazet <[email protected]> http://suva.vyatta.com/git/?p=linux-vyatta.git;a=commitdiff;h=bb3ca67a714557c18fc2782eacb695e9d0401736 http://suva.vyatta.com/git/?p=linux-vyatta.git;a=commitdiff;h=bb27cb9460991036cd7a9e5ddbd6c03553f3baec http://suva.vyatta.com/git/?p=linux-vyatta.git;a=commitdiff;h=337f5011c7315b14f72e6e54d413f6432050f773 http://suva.vyatta.com/git/?p=linux-vyatta.git;a=commitdiff;h=7544d5aab497992a587a307067e99032ea313711 http://suva.vyatta.com/git/?p=linux-vyatta.git;a=commitdiff;h=d3ec0e8ec17a7601875f18820807866577f3ed19 http://suva.vyatta.com/git/?p=linux-vyatta.git;a=commitdiff;h=c5eff445787835685104ec600f5a7d2f18afa2ab
_______________________________________________ svn mailing list [email protected] http://mailman.vyatta.com/mailman/listinfo/svn
