Messages in this thread | | | Date | Tue, 14 Apr 2020 16:27:15 -0700 (PDT) | Subject | Re: [PATCH net] rxrpc: Fix DATA Tx to disable nofrag for UDP on AF_INET6 socket | From | David Miller <> |
| |
From: David Howells <dhowells@redhat.com> Date: Mon, 13 Apr 2020 13:57:14 +0100
> Fix the DATA packet transmission to disable nofrag for UDPv4 on an AF_INET6 > socket as well as UDPv6 when trying to transmit fragmentably. > > Without this, packets filled to the normal size used by the kernel AFS > client of 1412 bytes be rejected by udp_sendmsg() with EMSGSIZE > immediately. The ->sk_error_report() notification hook is called, but > rxrpc doesn't generate a trace for it. > > This is a temporary fix; a more permanent solution needs to involve > changing the size of the packets being filled in accordance with the MTU, > which isn't currently done in AF_RXRPC. The reason for not doing so was > that, barring the last packet in an rx jumbo packet, jumbos can only be > assembled out of 1412-byte packets - and the plan was to construct jumbos > on the fly at transmission time. > > Also, there's no point turning on IPV6_MTU_DISCOVER, since IPv6 has to > engage in this anyway since fragmentation is only done by the sender. We > can then condense the switch-statement in rxrpc_send_data_packet(). > > Fixes: 75b54cb57ca3 ("rxrpc: Add IPv6 support") > Signed-off-by: David Howells <dhowells@redhat.com>
Applied, thanks David.
| |