diff options
author | Mimi Zohar <zohar@linux.vnet.ibm.com> | 2012-01-17 21:40:02 +0100 |
---|---|---|
committer | James Morris <jmorris@namei.org> | 2012-01-18 00:41:30 +0100 |
commit | 6ac6172a935d1faf7ef259802267657bc0007a62 (patch) | |
tree | 034c1a79a3d401926f6b968eb270d34f561e50f1 /security/keys/encrypted-keys/masterkey_trusted.c | |
parent | keys: fix trusted/encrypted keys sparse rcu_assign_pointer messages (diff) | |
download | linux-6ac6172a935d1faf7ef259802267657bc0007a62.tar.xz linux-6ac6172a935d1faf7ef259802267657bc0007a62.zip |
encrypted-keys: fix rcu and sparse messages
Enabling CONFIG_PROVE_RCU and CONFIG_SPARSE_RCU_POINTER resulted in
"suspicious rcu_dereference_check() usage!" and "incompatible types
in comparison expression (different address spaces)" messages.
Access the masterkey directly when holding the rwsem.
Changelog v1:
- Use either rcu_read_lock()/rcu_derefence_key()/rcu_read_unlock()
or remove the unnecessary rcu_derefence() - David Howells
Reported-by: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
Signed-off-by: Mimi Zohar <zohar@us.ibm.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: James Morris <jmorris@namei.org>
Diffstat (limited to 'security/keys/encrypted-keys/masterkey_trusted.c')
-rw-r--r-- | security/keys/encrypted-keys/masterkey_trusted.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/security/keys/encrypted-keys/masterkey_trusted.c b/security/keys/encrypted-keys/masterkey_trusted.c index 8c16c3e472e7..013f7e5d3a2f 100644 --- a/security/keys/encrypted-keys/masterkey_trusted.c +++ b/security/keys/encrypted-keys/masterkey_trusted.c @@ -39,7 +39,7 @@ struct key *request_trusted_key(const char *trusted_desc, goto error; down_read(&tkey->sem); - tpayload = rcu_dereference(tkey->payload.data); + tpayload = tkey->payload.data; *master_key = tpayload->key; *master_keylen = tpayload->key_len; error: |