Commit 5c84342a authored by Marc Dionne's avatar Marc Dionne Committed by James Morris

KEYS: Unlock tasklist when exiting early from keyctl_session_to_parent

When we exit early from keyctl_session_to_parent because of permissions or
because the session keyring is the same as the parent, we need to unlock the
tasklist.

The missing unlock causes the system to hang completely when using
keyctl(KEYCTL_SESSION_TO_PARENT) with a keyring shared with the parent.
Signed-off-by: default avatarMarc Dionne <marc.c.dionne@gmail.com>
Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
Signed-off-by: default avatarJames Morris <jmorris@namei.org>
parent 4a5d6ba1
...@@ -1319,6 +1319,7 @@ long keyctl_session_to_parent(void) ...@@ -1319,6 +1319,7 @@ long keyctl_session_to_parent(void)
already_same: already_same:
ret = 0; ret = 0;
not_permitted: not_permitted:
write_unlock_irq(&tasklist_lock);
put_cred(cred); put_cred(cred);
return ret; return ret;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment