aboutsummaryrefslogtreecommitdiff
path: root/lib/scatterlist.c
diff options
context:
space:
mode:
authorJack Miller <[email protected]>2014-08-08 14:23:21 -0700
committerLinus Torvalds <[email protected]>2014-08-08 15:57:26 -0700
commit83293c0f5a6130bf7d60b7b406f4a4de0cadd3d8 (patch)
tree9800879dfd131c263d57276c29494b06deac7f70 /lib/scatterlist.c
parentab602f799159393143d567e5c04b936fec79d6bd (diff)
shm: allow exit_shm in parallel if only marking orphans
If shm_rmid_force (the default state) is not set then the shmids are only marked as orphaned and does not require any add, delete, or locking of the tree structure. Seperate the sysctl on and off case, and only obtain the read lock. The newly added list head can be deleted under the read lock because we are only called with current and will only change the semids allocated by this task and not manipulate the list. This commit assumes that up_read includes a sufficient memory barrier for the writes to be seen my others that later obtain a write lock. Signed-off-by: Milton Miller <[email protected]> Signed-off-by: Jack Miller <[email protected]> Cc: Davidlohr Bueso <[email protected]> Cc: Manfred Spraul <[email protected]> Cc: Anton Blanchard <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'lib/scatterlist.c')
0 files changed, 0 insertions, 0 deletions