Bug 8659 - Patch for bug #8635 breaks TCPv6
Summary: Patch for bug #8635 breaks TCPv6
Status: REJECTED INSUFFICIENT_DATA
Alias: None
Product: Networking
Classification: Unclassified
Component: IPV6 (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Hideaki YOSHIFUJI
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-06-21 08:05 UTC by Dustin Marquess
Modified: 2009-03-24 05:05 UTC (History)
0 users

See Also:
Kernel Version: 2.6.22-rc4-mm2
Subsystem:
Regression: ---
Bisected commit-id:


Attachments

Description Dustin Marquess 2007-06-21 08:05:05 UTC
Most recent kernel where this bug did not occur: 2.6.22-rc4-mm2 before #8635 patch
Distribution: Debian/testing (lenny)
Hardware Environment: API CS20 EV68AL Alpha
Software Environment:
Linux sky 2.6.22-rc4-mm2 #1 SMP Wed Jun 20 22:27:22 CDT 2007 alpha GNU/Linux

Gnu C                  4.2.1
Gnu make               3.81
binutils               Binutils
util-linux             2.12r
mount                  2.12r
module-init-tools      3.3-pre11
e2fsprogs              1.40-WIP
xfsprogs               2.8.18
Linux C Library        > libc.2.5
Dynamic linker (ldd)   2.5
Procps                 3.2.7
Net-tools              1.60
Console-tools          0.2.3
Sh-utils               5.97
udev                   105
Modules Loaded         adm9240 hwmon_vid loop i2c_ali1535 i2c_ali15x3 i2c_core ide_cd cdrom generic sd_mod e100 alim15x3 mii sym53c8xx scsi_transport_spi ide_core scsi_mod

Problem Description:

The patch for bug #8635 fixes the unaligned access errors for ICMPv6, however it seems to break TCPv6.  Inbound connections make it pack SYN/ACK and the first ACK, however they seem to stop there.  Outbound connections seem to also "hang".  

A tshark trace of an inbound SSH connection before the patch shows (network prefix removed):

  0.000000 ::1 -> :202:56ff:fe00:8b5 TCP 4124 > ssh [SYN] Seq=0 Len=0 MSS=1440 TSV=129719875 TSER=0 WS=4
  0.000000 :202:56ff:fe00:8b5 -> ::1 TCP ssh > 4124 [SYN, ACK] Seq=0 Ack=1 Win=5712 Len=0 MSS=1440 TSV=4294865575 TSER=129719875
 WS=4
  0.000977 ::1 -> :202:56ff:fe00:8b5 TCP 4124 > ssh [ACK] Seq=1 Ack=1 Win=5760 Len=0 TSV=129719875 TSER=4294865575
  0.018567 :202:56ff:fe00:8b5 -> ::1 SSH Server Protocol: SSH-2.0-OpenSSH_4.3p2 Debian-9
  0.019544 ::1 -> :202:56ff:fe00:8b5 TCP 4124 > ssh [ACK] Seq=1 Ack=32 Win=5760 Len=0 TSV=129719877 TSER=4294865594
  0.019544 ::1 -> :202:56ff:fe00:8b5 SSH Client Protocol: SSH-2.0-OpenSSH_4.3p2 Debian-9
  0.019544 :202:56ff:fe00:8b5 -> ::1 TCP ssh > 4124 [ACK] Seq=32 Ack=32 Win=5712 Len=0 TSV=4294865595 TSER=129719877
  0.022476 :202:56ff:fe00:8b5 -> ::1 SSHv2 Server: Key Exchange Init
  0.031270 ::1 -> :202:56ff:fe00:8b5 SSHv2 Client: Key Exchange Init
  0.070359 :202:56ff:fe00:8b5 -> ::1 TCP ssh > 4124 [ACK] Seq=736 Ack=584 Win=6816 Len=0 TSV=4294865647 TSER=129719878
  0.071336 ::1 -> :202:56ff:fe00:8b5 SSHv2 Client: Diffie-Hellman GEX Request
  0.071336 :202:56ff:fe00:8b5 -> ::1 TCP ssh > 4124 [ACK] Seq=736 Ack=608 Win=6816 Len=0 TSV=4294865648 TSER=129719882

A tshark trace after the patch shows:

  0.000000 ::1 -> :202:56ff:fe00:8b5 TCP 3759 > ssh [SYN] Seq=0 Len=0 MSS=1440 TSV=129740322 TSER=0 WS=4
  0.003909 ::1 -> :202:56ff:fe00:8b5 ICMPv6 Neighbor advertisement
  0.003909 :202:56ff:fe00:8b5 -> ::1 TCP ssh > 3759 [SYN, ACK] Seq=0 Ack=1 Win=5712 Len=0 MSS=1440 TSV=4294738105 TSER=129740322
 WS=4
  0.003909 ::1 -> :202:56ff:fe00:8b5 TCP 3759 > ssh [ACK] Seq=1 Ack=1 Win=5760 Len=0 TSV=129740322 TSER=4294738105
  0.021500 :202:56ff:fe00:8b5 -> ::1 SSH Server Protocol: SSH-2.0-OpenSSH_4.3p2 Debian-9
  0.022477 ::1 -> :202:56ff:fe00:8b5 TCP 3759 > ssh [ACK] Seq=1 Ack=32 Win=5760 Len=0 TSV=129740324 TSER=4294738126
  0.022477 ::1 -> :202:56ff:fe00:8b5 SSH Client Protocol: SSH-2.0-OpenSSH_4.3p2 Debian-9
  0.022477 :202:56ff:fe00:8b5 -> ::1 TCP ssh > 3759 [ACK] Seq=32 Ack=32 Win=5712 Len=0 TSV=4294738127 TSER=129740324
  0.025409 :202:56ff:fe00:8b5 -> ::1 SSHv2 Server: Key Exchange Init
  0.034204 ::1 -> :202:56ff:fe00:8b5 SSHv2 Client: Key Exchange Init
  0.227701 :202:56ff:fe00:8b5 -> ::1 SSHv2 [TCP Retransmission] Server: Key Exchange Init
  0.236497 ::1 -> :202:56ff:fe00:8b5 SSHv2 [TCP Retransmission] Client: Key Exchange Init
  0.630331 :202:56ff:fe00:8b5 -> ::1 SSHv2 [TCP Retransmission] Server: Key Exchange Init

So initial data transfer works, but then breaks down.

Sorry about the delay in opening this bug.  I didn't realize TCPv6 was broke until last night.  I'm not sure about UDPv6 yet.

Steps to reproduce: Apply patch from #8635.
Comment 1 Alan 2009-03-24 05:05:44 UTC
Closing out old stale bug reports. If this is in error, please re-open

Note You need to log in before you can comment on or make changes to this bug.