Searched hist:aa1757f90bea3f598b6e5d04d922a6a60200f1da (Results 1 – 4 of 4) sorted by relevance
/openbmc/linux/kernel/ |
H A D | signal.c | diff aa1757f90bea3f598b6e5d04d922a6a60200f1da Tue Mar 28 18:11:12 CST 2006 Oleg Nesterov <oleg@tv-sign.ru> [PATCH] convert sighand_cache to use SLAB_DESTROY_BY_RCU
This patch borrows a clever Hugh's 'struct anon_vma' trick.
Without tasklist_lock held we can't trust task->sighand until we locked it and re-checked that it is still the same.
But this means we don't need to defer 'kmem_cache_free(sighand)'. We can return the memory to slab immediately, all we need is to be sure that sighand->siglock can't dissapear inside rcu protected section.
To do so we need to initialize ->siglock inside ctor function, SLAB_DESTROY_BY_RCU does the rest.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
H A D | fork.c | diff aa1757f90bea3f598b6e5d04d922a6a60200f1da Tue Mar 28 18:11:12 CST 2006 Oleg Nesterov <oleg@tv-sign.ru> [PATCH] convert sighand_cache to use SLAB_DESTROY_BY_RCU
This patch borrows a clever Hugh's 'struct anon_vma' trick.
Without tasklist_lock held we can't trust task->sighand until we locked it and re-checked that it is still the same.
But this means we don't need to defer 'kmem_cache_free(sighand)'. We can return the memory to slab immediately, all we need is to be sure that sighand->siglock can't dissapear inside rcu protected section.
To do so we need to initialize ->siglock inside ctor function, SLAB_DESTROY_BY_RCU does the rest.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
/openbmc/linux/fs/ |
H A D | exec.c | diff aa1757f90bea3f598b6e5d04d922a6a60200f1da Tue Mar 28 18:11:12 CST 2006 Oleg Nesterov <oleg@tv-sign.ru> [PATCH] convert sighand_cache to use SLAB_DESTROY_BY_RCU
This patch borrows a clever Hugh's 'struct anon_vma' trick.
Without tasklist_lock held we can't trust task->sighand until we locked it and re-checked that it is still the same.
But this means we don't need to defer 'kmem_cache_free(sighand)'. We can return the memory to slab immediately, all we need is to be sure that sighand->siglock can't dissapear inside rcu protected section.
To do so we need to initialize ->siglock inside ctor function, SLAB_DESTROY_BY_RCU does the rest.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
/openbmc/linux/include/linux/ |
H A D | sched.h | diff aa1757f90bea3f598b6e5d04d922a6a60200f1da Tue Mar 28 18:11:12 CST 2006 Oleg Nesterov <oleg@tv-sign.ru> [PATCH] convert sighand_cache to use SLAB_DESTROY_BY_RCU
This patch borrows a clever Hugh's 'struct anon_vma' trick.
Without tasklist_lock held we can't trust task->sighand until we locked it and re-checked that it is still the same.
But this means we don't need to defer 'kmem_cache_free(sighand)'. We can return the memory to slab immediately, all we need is to be sure that sighand->siglock can't dissapear inside rcu protected section.
To do so we need to initialize ->siglock inside ctor function, SLAB_DESTROY_BY_RCU does the rest.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|