summaryrefslogtreecommitdiffstats
path: root/include/linux/cred.h
diff options
context:
space:
mode:
authorJeff Layton <jlayton@primarydata.com>2014-07-15 12:59:36 -0400
committerJ. Bruce Fields <bfields@redhat.com>2014-07-17 16:15:35 -0400
commitae4b884fc6316b3190be19448cea24b020c1cad6 (patch)
tree8a90906fdc26381ae1283e53399492391c23b03d /include/linux/cred.h
parentb0fc29d6fcd0310a8437123fe6f30b1ae60a62f9 (diff)
downloadlinux-stable-ae4b884fc6316b3190be19448cea24b020c1cad6.tar.gz
linux-stable-ae4b884fc6316b3190be19448cea24b020c1cad6.tar.bz2
linux-stable-ae4b884fc6316b3190be19448cea24b020c1cad6.zip
nfsd: silence sparse warning about accessing credentials
sparse says: fs/nfsd/auth.c:31:38: warning: incorrect type in argument 1 (different address spaces) fs/nfsd/auth.c:31:38: expected struct cred const *cred fs/nfsd/auth.c:31:38: got struct cred const [noderef] <asn:4>*real_cred Add a new accessor for the ->real_cred and use that to fetch the pointer. Accessing current->real_cred directly is actually quite safe since we know that they can't go away so this is mostly a cosmetic fixup to silence sparse. Signed-off-by: Jeff Layton <jlayton@primarydata.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'include/linux/cred.h')
-rw-r--r--include/linux/cred.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/cred.h b/include/linux/cred.h
index f61d6c8f5ef3..b2d0820837c4 100644
--- a/include/linux/cred.h
+++ b/include/linux/cred.h
@@ -259,6 +259,15 @@ static inline void put_cred(const struct cred *_cred)
rcu_dereference_protected(current->cred, 1)
/**
+ * current_real_cred - Access the current task's objective credentials
+ *
+ * Access the objective credentials of the current task. RCU-safe,
+ * since nobody else can modify it.
+ */
+#define current_real_cred() \
+ rcu_dereference_protected(current->real_cred, 1)
+
+/**
* __task_cred - Access a task's objective credentials
* @task: The task to query
*