[PATCH] Keys: Use RCU to manage session keyring pointer
authorDavid Howells <dhowells@redhat.com>
Fri, 24 Jun 2005 05:00:53 +0000 (22:00 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Fri, 24 Jun 2005 07:05:18 +0000 (00:05 -0700)
commit8589b4e00e352f983259140f25a262d973be6bc5
treed53c9b43ee0aaa2d7518a023c4b6373422117506
parent7888e7ff4ee579442128d7d12a9c9dbf2cf7de6a
[PATCH] Keys: Use RCU to manage session keyring pointer

The attached patch uses RCU to manage the session keyring pointer in struct
signal_struct.  This means that searching need not disable interrupts and get
a the sighand spinlock to access this pointer.  Furthermore, by judicious use
of rcu_read_(un)lock(), this patch also avoids the need to take and put
refcounts on the session keyring itself, thus saving on even more atomic ops.

Signed-Off-By: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
security/keys/process_keys.c
security/keys/request_key.c