| From | Greg Kroah-Hartman <> | Subject | [PATCH 5.17 255/343] SUNRPC: Handle ENOMEM in call_transmit_status() | Date | Tue, 12 Apr 2022 08:31:13 +0200 |
| |
From: Trond Myklebust <trond.myklebust@hammerspace.com>
[ Upstream commit d3c15033b240767d0287f1c4a529cbbe2d5ded8a ]
Both call_transmit() and call_bc_transmit() can now return ENOMEM, so let's make sure that we handle the errors gracefully.
Fixes: 0472e4766049 ("SUNRPC: Convert socket page send code to use iov_iter()") Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- net/sunrpc/clnt.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index b36d235d2d6d..bf1fd6caaf92 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c @@ -2197,6 +2197,7 @@ call_transmit_status(struct rpc_task *task) * socket just returned a connection error, * then hold onto the transport lock. */ + case -ENOMEM: case -ENOBUFS: rpc_delay(task, HZ>>2); fallthrough; @@ -2280,6 +2281,7 @@ call_bc_transmit_status(struct rpc_task *task) case -ENOTCONN: case -EPIPE: break; + case -ENOMEM: case -ENOBUFS: rpc_delay(task, HZ>>2); fallthrough; -- 2.35.1
|