Commit 5e9a7b9c authored by Trond Myklebust's avatar Trond Myklebust
Browse files

NFS: Fix up a sparse warning



sparse is warning about an incorrect RCU dereference.
fs/nfs/dir.c:2965:56: warning: incorrect type in argument 1 (different address spaces)
fs/nfs/dir.c:2965:56:    expected struct cred const *
fs/nfs/dir.c:2965:56:    got struct cred const [noderef] __rcu *const cred

Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent 029085b8
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -2957,12 +2957,14 @@ static u64 nfs_access_login_time(const struct task_struct *task,
				 const struct cred *cred)
{
	const struct task_struct *parent;
	const struct cred *pcred;
	u64 ret;

	rcu_read_lock();
	for (;;) {
		parent = rcu_dereference(task->real_parent);
		if (parent == task || cred_fscmp(parent->cred, cred) != 0)
		pcred = rcu_dereference(parent->cred);
		if (parent == task || cred_fscmp(pcred, cred) != 0)
			break;
		task = parent;
	}