freebsd-skq/sys
andre 915054f299 Fix the interaction between 'ICMP fragmentation needed' MTU updates,
path MTU discovery and the tcp_minmss limiter for very small MTU's.

When the MTU suggested by the gateway via ICMP, or if there isn't
any the next smaller step from ip_next_mtu(), is lower than the
floor enforced by net.inet.tcp.minmss (default 216) the value is
ignored and the default MSS (512) is used instead.  However the
DF flag in the IP header is still set in tcp_output() preventing
fragmentation by the gateway.

Fix this by using tcp_minmss as the MSS and clear the DF flag if
the suggested MTU is too low.  This turns off path MTU dissovery
for the remainder of the session and allows fragmentation to be
done by the gateway.

Only MTU's smaller than 256 are affected.  The smallest official
MTU specified is for AX.25 packet radio at 256 octets.

PR:		kern/146628
Tested by:	Matthew Luckie <mjl-at-luckie org nz>
MFC after:	1 week
2010-08-15 13:25:18 +00:00
..
amd64 Reset switchtime to zero rather than the current CPU ticker (TSC) value. 2010-08-13 22:08:42 +00:00
arm Update various places that store or manipulate CPU masks to use cpumask_t 2010-08-11 23:22:53 +00:00
boot Return EIO if vdev->v_phys_read is NULL. 2010-08-09 06:36:11 +00:00
bsm Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
cam Fix two (very common) occurrences of s/sytem/system in comments. 2010-08-02 18:06:49 +00:00
cddl In FreeBSD we use 'jailed' property. 2010-08-07 10:23:54 +00:00
compat Place spinlock_enter() and spinlock_exit() just around X86EMU calls. 2010-08-10 15:22:48 +00:00
conf Rename TARGET_XLR_XLS to CPU_RMI to match other CPU_xxx definitions. 2010-08-13 12:56:00 +00:00
contrib Merge ACPICA 20100806. 2010-08-06 23:11:19 +00:00
crypto Crypto(4) driver for AESNI. 2010-07-23 11:00:46 +00:00
ddb One more use for _SIG_VALID. 2010-07-12 10:18:10 +00:00
dev Fix indenting/whitespace issues introduced by me. 2010-08-15 11:40:53 +00:00
fs Allow user created symbolic links to cover device files and directories 2010-08-12 15:29:07 +00:00
gdb Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
geom Check that gsp is not NULL before access. It can be NULL 2010-08-03 11:21:17 +00:00
gnu Move checking against RLIMIT_FSIZE into one place, vn_rlimit_fsize(). 2010-05-05 16:44:25 +00:00
i386 Revert r211176: 2010-08-12 13:46:43 +00:00
ia64 Prefer struct sysentvec sv_psstrings to hardcoding FREEBSD32_PS_STRINGS 2010-08-07 11:57:13 +00:00
isa When we are not switching VTs, just mark all buffer to be updated. 2010-07-15 23:11:51 +00:00
kern Simplify taskqueue_drain() by using proved macros. 2010-08-13 19:20:35 +00:00
kgssapi Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
libkern Provide memchr() in the libkern. 2010-06-02 17:27:23 +00:00
mips Rename TARGET_XLR_XLS to CPU_RMI to match other CPU_xxx definitions. 2010-08-13 12:56:00 +00:00
modules Hook tpm.4 manual to build. 2010-08-13 04:00:35 +00:00
net When moving an ethernet ifnet from one vnet to another, destroy the 2010-08-13 18:17:32 +00:00
net80211 Introduce IEEE80211_C_RATECTL, drivers which use the ratectl framework 2010-08-14 20:12:10 +00:00
netatalk Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
netgraph Fix typo 2010-08-02 22:26:08 +00:00
netinet Fix the interaction between 'ICMP fragmentation needed' MTU updates, 2010-08-15 13:25:18 +00:00
netinet6 In rip6_input(), in case of multicast, we might skip the normal processing 2010-08-14 14:13:44 +00:00
netipsec MFp4 @178283: 2010-05-24 16:27:47 +00:00
netipx Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
netnatm Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
netncp Switch to our preferred 2-clause BSD license. 2010-04-07 16:50:38 +00:00
netsmb Switch to our preferred 2-clause BSD license. 2010-04-07 16:50:38 +00:00
nfs Move sys/nfsclient/nfs_lock.c into sys/nfs and build it as a separate 2010-07-24 22:11:11 +00:00
nfsclient Add some mutex locking on the nfsnode to the regular NFS client. 2010-08-04 01:19:11 +00:00
nfsserver Patch the regular NFS server so that it returns ESTALE to the client 2010-03-26 01:19:29 +00:00
nlm Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
opencrypto Fix typo in comment. 2010-08-11 16:53:45 +00:00
pc98 Add MALLOC_DEBUG_MAXZONES debug malloc(9) option to use multiple uma 2010-07-28 15:36:12 +00:00
pci Implement WOL. WOL is supported on RTL8139B or newer controllers. 2010-07-19 18:01:06 +00:00
powerpc Update various places that store or manipulate CPU masks to use cpumask_t 2010-08-11 23:22:53 +00:00
rpc When the regular NFS server replied to a UDP client out of the replay 2010-03-23 23:03:30 +00:00
security Add a case to make sure that internal audit records get converted 2010-05-04 15:29:07 +00:00
sparc64 Update various places that store or manipulate CPU masks to use cpumask_t 2010-08-11 23:22:53 +00:00
sun4v Update various places that store or manipulate CPU masks to use cpumask_t 2010-08-11 23:22:53 +00:00
sys Add new make_dev_p(9) flag MAKEDEV_ETERNAL to inform devfs that created 2010-08-06 09:42:15 +00:00
teken Make ^L with cons25 and origin mode bit more sane. 2010-08-09 18:07:15 +00:00
tools Flattened Device Tree helper scripts. 2010-06-02 17:22:38 +00:00
ufs Softdep_process_worklist() should unsuspend not only before processing 2010-08-12 08:35:24 +00:00
vm Fix compile. It seemed better to have memguard.c include opt_vm.h in 2010-08-12 16:54:43 +00:00
x86 When performing a sanity check on the SRAT table to ensure that each 2010-07-29 17:37:35 +00:00
xdr Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
xen Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00
Makefile Create a custom branch where I will be able to do the merge. 2010-03-19 00:19:55 +00:00