[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160126205244.GA4649@redhat.com>
Date:	Tue, 26 Jan 2016 21:52:44 +0100
From:	Oleg Nesterov <oleg@...hat.com>
To:	Dmitry Vyukov <dvyukov@...gle.com>
Cc:	Andrew Morton <akpm@...ux-foundation.org>,
	"Amanieu d'Antras" <amanieu@...il.com>,
	Richard Weinberger <richard@....at>,
	Davidlohr Bueso <dave@...olabs.net>,
	Vladimir Davydov <vdavydov@...allels.com>,
	Palmer Dabbelt <palmer@...belt.com>,
	Andy Lutomirski <luto@...capital.net>,
	LKML <linux-kernel@...r.kernel.org>,
	syzkaller <syzkaller@...glegroups.com>,
	Kostya Serebryany <kcc@...gle.com>,
	Alexander Potapenko <glider@...gle.com>,
	Sasha Levin <sasha.levin@...cle.com>,
	Eric Dumazet <edumazet@...gle.com>
Subject: Re: WARNING in do_jobctl_trap
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
Powered by blists - more mailing lists
 
