Re: [PATCH] mm/kmemleak: rely on rcu for task stack scanning

From: Oleg Nesterov
Date: Fri Aug 21 2020 - 07:25:18 EST


On 08/20, Davidlohr Bueso wrote:
>
> @@ -1471,15 +1471,15 @@ static void kmemleak_scan(void)
> if (kmemleak_stack_scan) {
> struct task_struct *p, *g;
>
> - read_lock(&tasklist_lock);
> - do_each_thread(g, p) {
> + rcu_read_lock();
> + for_each_process_thread(g, p) {
> void *stack = try_get_task_stack(p);
> if (stack) {
> scan_block(stack, stack + THREAD_SIZE, NULL);
> put_task_stack(p);
> }
> - } while_each_thread(g, p);
> - read_unlock(&tasklist_lock);
> + }
> + rcu_read_unlock();

Acked-by: Oleg Nesterov <oleg@xxxxxxxxxx>