[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20180604.160656.1908177448752194104.davem@davemloft.net>
Date: Mon, 04 Jun 2018 16:06:56 -0400 (EDT)
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 call quietly cancelled out
on server
From: David Howells <dhowells@...hat.com>
Date: Sun, 03 Jun 2018 02:17:39 +0100
> Sometimes an in-progress call will stop responding on the fileserver when
> the fileserver quietly cancels the call with an internally marked abort
> (RX_CALL_DEAD), without sending an ABORT to the client.
>
> This causes the client's call to eventually expire from lack of incoming
> packets directed its way, which currently leads to it being cancelled
> locally with ETIME. Note that it's not currently clear as to why this
> happens as it's really hard to reproduce.
>
> The rotation policy implement by kAFS, however, doesn't differentiate
> between ETIME meaning we didn't get any response from the server and ETIME
> meaning the call got cancelled mid-flow. The latter leads to an oops when
> fetching data as the rotation partially resets the afs_read descriptor,
> which can result in a cleared page pointer being dereferenced because that
> page has already been filled.
...
> Signed-off-by: David Howells <dhowells@...hat.com>
Applied, thanks David.
Powered by blists - more mailing lists