NFS: Use parent's objective cred in nfs_access_login_time()
authorScott Mayhew <smayhew@redhat.com>
Tue, 5 Dec 2023 14:10:54 +0000 (09:10 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Jan 2024 23:35:18 +0000 (15:35 -0800)
commit4ffac0013421295e055005e8ae47d8c5b8ada387
tree957a68412f2e527ab0020dac796647445b13ac1d
parentb4b7dd1cb6083f88ea16fabca46baf317afbba99
NFS: Use parent's objective cred in nfs_access_login_time()

[ Upstream commit a10a9233073d984b239e22358ba21825e27e2e88 ]

The subjective cred (task->cred) can potentially be overridden and
subsquently freed in non-RCU context, which could lead to a panic if we
try to use it in cred_fscmp().  Use __task_cred(), which returns the
objective cred (task->real_cred) instead.

Fixes: 0eb43812c027 ("NFS: Clear the file access cache upon login")
Fixes: 5e9a7b9c2ea1 ("NFS: Fix up a sparse warning")

Signed-off-by: Scott Mayhew <smayhew@redhat.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/nfs/dir.c