https://github.com/torvalds/linux
Revision fd6149d332973bafa50f03ddb0ea9513e67f4517 authored by Ilpo Järvinen on 23 October 2008, 21:06:35 UTC, committed by David S. Miller on 23 October 2008, 21:06:35 UTC
This is not our bug! Sadly some devices cannot cope with the change
of TCP option ordering which was a result of the recent rewrite of
the option code (not that there was some particular reason steming
from the rewrite for the reordering) though any ordering of TCP
options is perfectly legal. Thus we restore the original ordering
to allow interoperability with/through such broken devices and add
some warning about this trap. Since the reordering just happened
without any particular reason, this change shouldn't cost us
anything.

There are already couple of known failure reports (within close
proximity of the last release), so the problem might be more
wide-spread than a single device. And other reports which may
be due to the same problem though the symptoms were less obvious.
Analysis of one of the case revealed (with very high probability)
that sack capability cannot be negotiated as the first option
(SYN never got a response).

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Reported-by: Aldo Maggi <sentiniate@tiscali.it>
Tested-by: Aldo Maggi <sentiniate@tiscali.it>
Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent b63365a
History
Tip revision: fd6149d332973bafa50f03ddb0ea9513e67f4517 authored by Ilpo Järvinen on 23 October 2008, 21:06:35 UTC
tcp: Restore ordering of TCP options for the sake of inter-operability
Tip revision: fd6149d
File Mode Size
ABI
DocBook
PCI
RCU
accounting
acpi
aoe
arm
auxdisplay
blackfin
block
cdrom
cgroups
connector
console
controllers
cpu-freq
cpuidle
cris
crypto
development-process
device-mapper
driver-model
dvb
early-userspace
fault-injection
fb
filesystems
firmware_class
frv
hwmon
i2c
i2o
ia64
ide
infiniband
input
ioctl
isdn
ja_JP
kbuild
kdump
ko_KR
laptops
lguest
m68k
make
mips
mn10300
mtd
namespaces
netlabel
networking
parisc
pcmcia
power
powerpc
prctl
s390
scheduler
scsi
serial
sh
sound
sparc
spi
sysctl
telephony
thermal
timers
tracers
uml
usb
video4linux
vm
w1
watchdog
x86
zh_CN
00-INDEX -rw-r--r-- 13.1 KB
BUG-HUNTING -rw-r--r-- 8.1 KB
Changes -rw-r--r-- 11.3 KB
CodingStyle -rw-r--r-- 28.9 KB
DMA-API.txt -rw-r--r-- 23.0 KB
DMA-ISA-LPC.txt -rw-r--r-- 5.2 KB
DMA-attributes.txt -rw-r--r-- 1.3 KB
DMA-mapping.txt -rw-r--r-- 27.3 KB
HOWTO -rw-r--r-- 28.6 KB
IO-mapping.txt -rw-r--r-- 7.8 KB
IPMI.txt -rw-r--r-- 27.0 KB
IRQ-affinity.txt -rw-r--r-- 2.1 KB
IRQ.txt -rw-r--r-- 962 bytes
Intel-IOMMU.txt -rw-r--r-- 3.9 KB
MSI-HOWTO.txt -rw-r--r-- 22.4 KB
Makefile -rw-r--r-- 143 bytes
ManagementStyle -rw-r--r-- 12.9 KB
README.DAC960 -rw-r--r-- 33.9 KB
README.cycladesZ -rw-r--r-- 293 bytes
SAK.txt -rw-r--r-- 2.8 KB
SELinux.txt -rw-r--r-- 1.0 KB
SM501.txt -rw-r--r-- 2.8 KB
SecurityBugs -rw-r--r-- 1.8 KB
Smack.txt -rw-r--r-- 19.8 KB
SubmitChecklist -rw-r--r-- 3.5 KB
SubmittingDrivers -rw-r--r-- 6.2 KB
SubmittingPatches -rw-r--r-- 25.4 KB
VGA-softcursor.txt -rw-r--r-- 2.0 KB
applying-patches.txt -rw-r--r-- 19.5 KB
atomic_ops.txt -rw-r--r-- 19.0 KB
basic_profiling.txt -rw-r--r-- 1.7 KB
binfmt_misc.txt -rw-r--r-- 6.0 KB
braille-console.txt -rw-r--r-- 1.4 KB
bt8xxgpio.txt -rw-r--r-- 4.3 KB
cachetlb.txt -rw-r--r-- 15.9 KB
cciss.txt -rw-r--r-- 6.2 KB
computone.txt -rw-r--r-- 17.2 KB
cpqarray.txt -rw-r--r-- 2.2 KB
cpu-hotplug.txt -rw-r--r-- 14.6 KB
cpu-load.txt -rw-r--r-- 3.0 KB
cpusets.txt -rw-r--r-- 34.6 KB
cputopology.txt -rw-r--r-- 1.2 KB
dcdbas.txt -rw-r--r-- 3.6 KB
debugging-modules.txt -rw-r--r-- 954 bytes
debugging-via-ohci1394.txt -rw-r--r-- 7.5 KB
dell_rbu.txt -rw-r--r-- 4.9 KB
devices.txt -rw-r--r-- 115.7 KB
digiepca.txt -rw-r--r-- 3.7 KB
dontdiff -rw-r--r-- 1.9 KB
edac.txt -rw-r--r-- 20.8 KB
eisa.txt -rw-r--r-- 7.1 KB
email-clients.txt -rw-r--r-- 7.9 KB
exception.txt -rw-r--r-- 12.1 KB
feature-removal-schedule.txt -rw-r--r-- 13.0 KB
floppy.txt -rw-r--r-- 8.3 KB
ftrace.txt -rw-r--r-- 52.0 KB
gpio.txt -rw-r--r-- 25.9 KB
hayes-esp.txt -rw-r--r-- 6.5 KB
highuid.txt -rw-r--r-- 2.4 KB
hw_random.txt -rw-r--r-- 3.5 KB
initrd.txt -rw-r--r-- 14.1 KB
io_ordering.txt -rw-r--r-- 1.9 KB
ioctl-number.txt -rw-r--r-- 7.2 KB
iostats.txt -rw-r--r-- 7.9 KB
irqflags-tracing.txt -rw-r--r-- 2.6 KB
isapnp.txt -rw-r--r-- 433 bytes
java.txt -rw-r--r-- 10.7 KB
kernel-doc-nano-HOWTO.txt -rw-r--r-- 9.7 KB
kernel-docs.txt -rw-r--r-- 34.8 KB
kernel-parameters.txt -rw-r--r-- 74.4 KB
keys-request-key.txt -rw-r--r-- 7.4 KB
keys.txt -rw-r--r-- 46.2 KB
kobject.txt -rw-r--r-- 16.9 KB
kprobes.txt -rw-r--r-- 20.6 KB
kref.txt -rw-r--r-- 6.2 KB
ldm.txt -rw-r--r-- 3.9 KB
leds-class.txt -rw-r--r-- 3.8 KB
local_ops.txt -rw-r--r-- 6.1 KB
lockdep-design.txt -rw-r--r-- 8.8 KB
lockstat.txt -rw-r--r-- 6.5 KB
logo.gif -rw-r--r-- 16.0 KB
logo.txt -rw-r--r-- 563 bytes
magic-number.txt -rw-r--r-- 9.7 KB
markers.txt -rw-r--r-- 3.5 KB
mca.txt -rw-r--r-- 11.3 KB
md.txt -rw-r--r-- 19.6 KB
memory-barriers.txt -rw-r--r-- 76.2 KB
memory-hotplug.txt -rw-r--r-- 13.4 KB
memory.txt -rw-r--r-- 2.1 KB
mono.txt -rw-r--r-- 2.5 KB
moxa-smartio -rw-r--r-- 20.1 KB
mutex-design.txt -rw-r--r-- 5.8 KB
nbd.txt -rw-r--r-- 1.9 KB
nmi_watchdog.txt -rw-r--r-- 3.9 KB
nommu-mmap.txt -rw-r--r-- 10.2 KB
numastat.txt -rw-r--r-- 861 bytes
oops-tracing.txt -rw-r--r-- 12.3 KB
paride.txt -rw-r--r-- 16.7 KB
parport-lowlevel.txt -rw-r--r-- 32.2 KB
parport.txt -rw-r--r-- 8.8 KB
pi-futex.txt -rw-r--r-- 5.7 KB
pnp.txt -rw-r--r-- 6.8 KB
preempt-locking.txt -rw-r--r-- 5.2 KB
prio_tree.txt -rw-r--r-- 5.2 KB
ramdisk.txt -rw-r--r-- 6.2 KB
rbtree.txt -rw-r--r-- 6.6 KB
rfkill.txt -rw-r--r-- 25.9 KB
riscom8.txt -rw-r--r-- 1.3 KB
robust-futex-ABI.txt -rw-r--r-- 8.7 KB
robust-futexes.txt -rw-r--r-- 9.4 KB
rocket.txt -rw-r--r-- 7.6 KB
rt-mutex-design.txt -rw-r--r-- 32.8 KB
rt-mutex.txt -rw-r--r-- 3.5 KB
rtc.txt -rw-r--r-- 15.1 KB
serial-console.txt -rw-r--r-- 4.0 KB
sgi-ioc4.txt -rw-r--r-- 2.0 KB
sgi-visws.txt -rw-r--r-- 678 bytes
sparse.txt -rw-r--r-- 2.7 KB
specialix.txt -rw-r--r-- 14.7 KB
spinlocks.txt -rw-r--r-- 8.8 KB
stable_api_nonsense.txt -rw-r--r-- 9.2 KB
stable_kernel_rules.txt -rw-r--r-- 2.8 KB
stallion.txt -rw-r--r-- 17.6 KB
svga.txt -rw-r--r-- 14.1 KB
sx.txt -rw-r--r-- 11.3 KB
sysfs-rules.txt -rw-r--r-- 8.1 KB
sysrq.txt -rw-r--r-- 10.2 KB
tracepoints.txt -rw-r--r-- 3.7 KB
tty.txt -rw-r--r-- 10.3 KB
unaligned-memory-access.txt -rw-r--r-- 10.0 KB
unicode.txt -rw-r--r-- 6.5 KB
unshare.txt -rw-r--r-- 13.1 KB
video-output.txt -rw-r--r-- 1.1 KB
volatile-considered-harmful.txt -rw-r--r-- 5.6 KB
voyager.txt -rw-r--r-- 3.4 KB
zorro.txt -rw-r--r-- 2.8 KB

README.DAC960

back to top