summaryrefslogtreecommitdiff
path: root/fs/nfs
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@hammerspace.com>2023-05-10 19:28:00 +0300
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2023-05-19 23:50:05 +0300
commitd180891fba995bd54e25b089b1ec98d134873586 (patch)
tree50f45d6b8f7183e56a823013f26415680eb04ccd /fs/nfs
parent4b71e2416ec4cb3edd6c667243bce357b0c6f7b3 (diff)
downloadlinux-d180891fba995bd54e25b089b1ec98d134873586.tar.xz
SUNRPC: Don't change task->tk_status after the call to rpc_exit_task
Some calls to rpc_exit_task() may deliberately change the value of task->tk_status, for instance because it gets checked by the RPC call's rpc_release() callback. That makes it wrong to reset the value to task->tk_rpc_status. In particular this causes a bug where the rpc_call_done() callback tries to fail over a set of pNFS/flexfiles writes to a different IP address, but the reset of task->tk_status causes nfs_commit_release_pages() to immediately mark the file as having a fatal error. Fixes: 39494194f93b ("SUNRPC: Fix races with rpc_killall_tasks()") Cc: stable@vger.kernel.org # 6.1.x Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'fs/nfs')
0 files changed, 0 insertions, 0 deletions