[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20191031.122328.1237720180513331270.davem@davemloft.net>
Date: Thu, 31 Oct 2019 12:23:28 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: dhowells@...hat.com
Cc: netdev@...r.kernel.org, linux-afs@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net] rxrpc: Fix handling of last subpacket of jumbo
packet
From: David Howells <dhowells@...hat.com>
Date: Thu, 31 Oct 2019 12:13:46 +0000
> When rxrpc_recvmsg_data() sets the return value to 1 because it's drained
> all the data for the last packet, it checks the last-packet flag on the
> whole packet - but this is wrong, since the last-packet flag is only set on
> the final subpacket of the last jumbo packet. This means that a call that
> receives its last packet in a jumbo packet won't complete properly.
>
> Fix this by having rxrpc_locate_data() determine the last-packet state of
> the subpacket it's looking at and passing that back to the caller rather
> than having the caller look in the packet header. The caller then needs to
> cache this in the rxrpc_call struct as rxrpc_locate_data() isn't then
> called again for this packet.
>
> Fixes: 248f219cb8bc ("rxrpc: Rewrite the data and ack handling code")
> Fixes: e2de6c404898 ("rxrpc: Use info in skbuff instead of reparsing a jumbo packet")
> Signed-off-by: David Howells <dhowells@...hat.com>
Applied, thanks David.
Powered by blists - more mailing lists