]> git.baikalelectronics.ru Git - kernel.git/commit
Merge branch 'l2tp-auto-mtu'
authorDavid S. Miller <davem@davemloft.net>
Thu, 6 Apr 2017 20:43:32 +0000 (13:43 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 6 Apr 2017 20:43:32 +0000 (13:43 -0700)
commitc290ac3ae5ba46f98694ebce1075ad665ba2bc1f
treee7b6849cecaf471b48c8859f6464bccd7680e5a3
parent9ec71e72c313f9e091c54681e0867ec06e3e6534
parente4ac23e14b2dba2e46d74fffca44d84a1c79f791
Merge branch 'l2tp-auto-mtu'

R. Parameswaran says:

====================
L2TP:Adjust intf MTU, add underlay L3, L2 hdrs.

Existing L2TP kernel code does not derive the optimal MTU for Ethernet
pseudowires and instead leaves this to a userspace L2TP daemon or
operator. If an MTU is not specified, the existing kernel code chooses
an MTU that does not take account of all tunnel header overheads, which
can lead to unwanted IP fragmentation. When L2TP is used without a
control plane (userspace daemon), we would prefer that the kernel does a
better job of choosing a default pseudowire MTU, taking account of all
tunnel header overheads, including IP header options, if any. This patch
addresses this.

Change-set is organized as a two part patch series, with one patch
introducing a new kernel function to compute the IP overhead on a
socket, and the other patch using this new kernel function to compute
the default L2TP MTU for an Ethernet pseudowire.

Existing code also seems to assume an Ethernet (non-jumbo) underlay. The
change proposed here uses the PMTU mechanism and the dst entry in the
L2TP tunnel socket to directly pull up the underlay MTU (as the baseline
number on top of which the encapsulation headers are factored in).
An default MTU value of 1500 bytes is assumed as a fallback only if
this fails.

Fixed the kbuild test robot error in the previous posting.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>