Re: WARNING in do_jobctl_trap

From: Oleg Nesterov
Date: Tue Jan 26 2016 - 15:52:52 EST


On 01/26, Dmitry Vyukov wrote:
>
> Hello,
>
> The following program triggers WARN_ON_ONCE(!signr) in do_jobctl_trap:

Can't reproduce, but most probably I understand the problem... I'll try to
make the simplified test-case tomorrow, it should work if I am right.

Does it work for you reliably? If yes, any chance you can try the patch
below?

Oleg.

--- x/kernel/ptrace.c
+++ x/kernel/ptrace.c
@@ -73,11 +73,11 @@ void __ptrace_unlink(struct task_struct *child)
{
BUG_ON(!child->ptrace);

- child->ptrace = 0;
child->parent = child->real_parent;
list_del_init(&child->ptrace_entry);

spin_lock(&child->sighand->siglock);
+ child->ptrace = 0;

/*
* Clear all pending traps and TRAPPING. TRAPPING should be