From 70fc25ad6e71a99b5802eb92b95c26407acbe990 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Wed, 25 Jan 2017 14:48:24 +0000 Subject: [netdevice] Limit MTU by hardware maximum frame length Separate out the concept of "hardware maximum supported frame length" and "configured link MTU", and limit the latter according to the former. In networks where the DHCP-supplied link MTU is inconsistent with the hardware or driver capabilities (e.g. a network using jumbo frames), this will result in iPXE advertising a TCP MSS consistent with a size that can actually be received. Note that the term "MTU" is typically used to refer to the maximum length excluding the link-layer headers; we adopt this usage. Signed-off-by: Michael Brown --- src/net/infiniband/xsigo.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src/net/infiniband') diff --git a/src/net/infiniband/xsigo.c b/src/net/infiniband/xsigo.c index 91b7b71f1..0ee753c38 100644 --- a/src/net/infiniband/xsigo.c +++ b/src/net/infiniband/xsigo.c @@ -323,6 +323,7 @@ static int xve_update_mtu ( struct xsigo_nic *xve, struct eoib_device *eoib, * not the EoIB header. */ netdev->max_pkt_len = ( mtu + sizeof ( struct ethhdr ) ); + netdev->mtu = mtu; DBGC ( xve, "XVE %s has MTU %zd\n", xve->name, mtu ); return 0; -- cgit v1.2.3-55-g7522