提交 357f4aae 编写于 作者: S Stefan Richter 提交者: David S. Miller

firewire: net: really fix maximum possible MTU

The maximum unicast datagram size /without/ link fragmentation is
4096 - 4 = 4092 (max IEEE 1394 async payload size at >= S800 bus speed,
minus unfragmented encapssulation header).  Max broadcast datagram size
without fragmentation is 8 bytes less than that (due to GASP header).

The maximum datagram size /with/ link fragmentation is 0xfff = 4095
for unicast and broadcast.  This is because the RFC 2734 fragment
encapsulation header field for datagram size is only 12 bits wide.

Fixes: 5d48f00d('firewire: net: fix maximum possible MTU')
Signed-off-by: NStefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 0e82c763
...@@ -1465,7 +1465,7 @@ static int fwnet_probe(struct fw_unit *unit, ...@@ -1465,7 +1465,7 @@ static int fwnet_probe(struct fw_unit *unit,
net->mtu = 1500U; net->mtu = 1500U;
net->min_mtu = ETH_MIN_MTU; net->min_mtu = ETH_MIN_MTU;
net->max_mtu = ETH_MAX_MTU; net->max_mtu = 0xfff;
/* Set our hardware address while we're at it */ /* Set our hardware address while we're at it */
ha = (union fwnet_hwaddr *)net->dev_addr; ha = (union fwnet_hwaddr *)net->dev_addr;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册