Re: 2.6.18-rc3-mm2 - IPV6_MULTIPLE_TABLES borked....

2006-08-10 Thread Valdis . Kletnieks
On Sun, 06 Aug 2006 03:08:09 PDT, Andrew Morton said:
 ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.18-rc3/2.6.18-rc3-mm2/

Building a kernel with IPV6_MULTIPLE_TABLES=y breaks my IPv6 connectivity
quite badly.  It basically totally refuses to answer an IPv6 Neighbor Solicit
packet or IPv6 Echo Request packet.  I run a 'tcpdump -n ipv6', and I see the
requests come in, and no packets leaving.  Interestingly enough, if I try to
ping6 *out* of the box, it's totally willing to send a Neighbor Solicit outbound
(although it appears to totally ignore the Neighbor Advert packet that comes
back). Of course, things don't work very well at all with busticated Neighbor
Solicit.

A kernel built with IPV6_MULTIPLE_TABLES=n works just fine.

The relevant ifconfig (eth3 is a 100mbit port, eth5 is a wireless card):

eth3  Link encap:Ethernet  HWaddr 00:06:5B:EA:8E:4E  
  inet addr:128.173.14.107  Bcast:128.173.15.255  Mask:255.255.252.0
  inet6 addr: 2001:468:c80:2103:206:5bff:feea:8e4e/64 Scope:Global
  inet6 addr: fe80::206:5bff:feea:8e4e/64 Scope:Link
  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  RX packets:15529 errors:0 dropped:0 overruns:1 frame:0
  TX packets:2073 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1000 
  RX bytes:2333290 (2.2 MiB)  TX bytes:228862 (223.4 KiB)
  Interrupt:11 Base address:0x6800 

eth5  Link encap:Ethernet  HWaddr 00:02:2D:5C:11:48  
  inet addr:198.82.168.129  Bcast:198.82.168.255  Mask:255.255.255.0
  inet6 addr: 2001:468:c80:2181:202:2dff:fe5c:1148/64 Scope:Global
  inet6 addr: fe80::202:2dff:fe5c:1148/64 Scope:Link
  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  RX packets:2096 errors:0 dropped:0 overruns:0 frame:0
  TX packets:144 errors:1 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1000 
  RX bytes:280919 (274.3 KiB)  TX bytes:22184 (21.6 KiB)
  Interrupt:11 Base address:0xe100 

loLink encap:Local Loopback  
  inet addr:127.0.0.1  Mask:255.0.0.0
  inet6 addr: ::1/128 Scope:Host
  UP LOOPBACK RUNNING  MTU:16436  Metric:1
  RX packets:1583 errors:0 dropped:0 overruns:0 frame:0
  TX packets:1583 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:0 
  RX bytes:642598 (627.5 KiB)  TX bytes:642598 (627.5 KiB)

A working routing table:

netstat -r -n -A inet6
Kernel IPv6 routing table
Destination Next Hop
Flags Metric RefUse Iface
::1/128 ::  
U 0  12   1 lo  
2001:468:c80:2103:206:5bff:feea:8e4e/128::  
U 0  41 lo  
2001:468:c80:2103::/64  ::  
UA256113   0 eth3
2001:468:c80:2181:202:2dff:fe5c:1148/128::  
U 0  01 lo  
2001:468:c80:2181::/64  ::  
UA25611   0 eth5
fe80::202:2dff:fe5c:1148/128::  
U 0  01 lo  
fe80::206:5bff:feea:8e4e/128::  
U 0  21 lo  
fe80::/64   ::  
U 25600 eth3
fe80::/64   ::  
U 25600 eth5
ff02::1/128 ff02::1 
UC0  113   0 eth3
ff02::1/128 ff02::1 
UC0  10 eth5
ff00::/8::  
U 25600 eth3
ff00::/8::  
U 25600 eth5
::/0fe80::20f:35ff:fe3e:d41a
UGDA  1024   10 eth3
::/0fe80::20f:35ff:fe3e:d41a
UGDA  1024   10 eth5




pgp0hv0N6FUv3.pgp
Description: PGP signature


Re: 2.6.18-rc3-mm2 - IPV6_MULTIPLE_TABLES borked....

2006-08-10 Thread Patrick McHardy
[EMAIL PROTECTED] wrote:
 On Sun, 06 Aug 2006 03:08:09 PDT, Andrew Morton said:
 
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.18-rc3/2.6.18-rc3-mm2/
 
 
 Building a kernel with IPV6_MULTIPLE_TABLES=y breaks my IPv6 connectivity
 quite badly.  It basically totally refuses to answer an IPv6 Neighbor Solicit
 packet or IPv6 Echo Request packet.  I run a 'tcpdump -n ipv6', and I see the
 requests come in, and no packets leaving.  Interestingly enough, if I try to
 ping6 *out* of the box, it's totally willing to send a Neighbor Solicit 
 outbound
 (although it appears to totally ignore the Neighbor Advert packet that comes
 back). Of course, things don't work very well at all with busticated Neighbor
 Solicit.
 
 A kernel built with IPV6_MULTIPLE_TABLES=n works just fine.

It should be fixed by this patch (already contained in net-2.6.19).


[IPV6]: Fix policy routing lookup

When the lookup in a table returns ip6_null_entry the policy routing lookup
returns it instead of continuing in the next table, which effectively means
it only searches the local table.

Signed-off-by: Patrick McHardy [EMAIL PROTECTED]
Signed-off-by: David S. Miller [EMAIL PROTECTED]

---
commit 2b885e76c2b2c74d2dfe86a8140f0b41149f327c
tree 767711f03ea3e990ce02b3720718b77490027793
parent 5bd721a145d02a89a9b69adf3ede9d0b3647ae8b
author Patrick McHardy [EMAIL PROTECTED] Sun, 06 Aug 2006 22:24:08 -0700
committer David S. Miller [EMAIL PROTECTED] Sun, 06 Aug 2006 22:24:08 -0700

 net/ipv6/fib6_rules.c |4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/net/ipv6/fib6_rules.c b/net/ipv6/fib6_rules.c
index c3c8195..94a46ec 100644
--- a/net/ipv6/fib6_rules.c
+++ b/net/ipv6/fib6_rules.c
@@ -94,8 +94,10 @@ int fib6_rule_action(struct fib_rule *ru
 
if (rt != ip6_null_entry)
goto out;
-
dst_release(rt-u.dst);
+   rt = NULL;
+   goto out;
+
 discard_pkt:
dst_hold(rt-u.dst);
 out:


Re: 2.6.18-rc3-mm2 - IPV6_MULTIPLE_TABLES borked....

2006-08-10 Thread Valdis . Kletnieks
On Thu, 10 Aug 2006 22:02:03 +0200, Patrick McHardy said:

 [EMAIL PROTECTED] wrote:
  On Sun, 06 Aug 2006 03:08:09 PDT, Andrew Morton said:
  
 ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.18-rc3/2.6.18-rc3-mm2/
  
  
  Building a kernel with IPV6_MULTIPLE_TABLES=y breaks my IPv6 connectivity

 It should be fixed by this patch (already contained in net-2.6.19).

Confirmed fixed, thanks...


pgp35bA5bBOzS.pgp
Description: PGP signature