__key_link() should use the RCU deref wrapper rcu_dereference_locked_keyring()
for accessing keyring payloads rather than calling rcu_dereference_protected()
directly.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: James Morris <jmorris@namei.org>
 
        kenter("%d,%d,%p", keyring->serial, key->serial, nklist);
 
-       klist = rcu_dereference_protected(keyring->payload.subscriptions,
-                                         rwsem_is_locked(&keyring->sem));
+       klist = rcu_dereference_locked_keyring(keyring);
 
        atomic_inc(&key->usage);