diff options
author | Vasiliy Kulikov <[email protected]> | 2011-07-29 03:56:40 +0400 |
---|---|---|
committer | Linus Torvalds <[email protected]> | 2011-07-30 08:44:20 -1000 |
commit | 4c677e2eefdba9c5bfc4474e2e91b26ae8458a1d (patch) | |
tree | c3c81703d022e0c3c43ddffc3ae165eb25aa0b1d /tools/perf/util/scripting-engines/trace-event-python.c | |
parent | 5774ed014f02120db9a6945a1ecebeb97c2acccb (diff) |
shm: optimize locking and ipc_namespace getting
shm_lock() does a lookup of shm segment in shm_ids(ns).ipcs_idr, which
is redundant as we already know shmid_kernel address. An actual lock is
also not required for reads until we really want to destroy the segment.
exit_shm() and shm_destroy_orphaned() may avoid the loop by checking
whether there is at least one segment in current ipc_namespace.
The check of nsproxy and ipc_ns against NULL is redundant as exit_shm()
is called from do_exit() before the call to exit_notify(), so the
dereferencing current->nsproxy->ipc_ns is guaranteed to be safe.
Reported-by: Oleg Nesterov <[email protected]>
Signed-off-by: Vasiliy Kulikov <[email protected]>
Acked-by: Serge Hallyn <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'tools/perf/util/scripting-engines/trace-event-python.c')
0 files changed, 0 insertions, 0 deletions