Re: [PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-10-24 Thread Roman Penyaev
On Fri, Oct 21, 2016 at 5:47 PM, Oleg Nesterov wrote: > On 10/20, Andy Lutomirski wrote: >> >> > --- a/kernel/sched/core.c >> > +++ b/kernel/sched/core.c >> > @@ -3380,8 +3380,22 @@ static void __sched notrace __schedule(bool preempt) >> > * If a worker

Re: [PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-10-24 Thread Roman Penyaev
On Fri, Oct 21, 2016 at 5:47 PM, Oleg Nesterov wrote: > On 10/20, Andy Lutomirski wrote: >> >> > --- a/kernel/sched/core.c >> > +++ b/kernel/sched/core.c >> > @@ -3380,8 +3380,22 @@ static void __sched notrace __schedule(bool preempt) >> > * If a worker went to sleep,

Re: [PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-10-21 Thread Oleg Nesterov
On 10/20, Andy Lutomirski wrote: > > > --- a/kernel/sched/core.c > > +++ b/kernel/sched/core.c > > @@ -3380,8 +3380,22 @@ static void __sched notrace __schedule(bool preempt) > > * If a worker went to sleep, notify and ask > > workqueue > > *

Re: [PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-10-21 Thread Oleg Nesterov
On 10/20, Andy Lutomirski wrote: > > > --- a/kernel/sched/core.c > > +++ b/kernel/sched/core.c > > @@ -3380,8 +3380,22 @@ static void __sched notrace __schedule(bool preempt) > > * If a worker went to sleep, notify and ask > > workqueue > > *

Re: [PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-10-20 Thread Peter Zijlstra
On Wed, Sep 21, 2016 at 05:43:50PM +0200, Roman Pen wrote: > If panic_on_oops is not set and oops happens inside workqueue kthread, > kernel kills this kthread. Current patch fixes recursive GPF which > happens in that case with the following stack: > The root cause is that zeroed

Re: [PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-10-20 Thread Peter Zijlstra
On Wed, Sep 21, 2016 at 05:43:50PM +0200, Roman Pen wrote: > If panic_on_oops is not set and oops happens inside workqueue kthread, > kernel kills this kthread. Current patch fixes recursive GPF which > happens in that case with the following stack: > The root cause is that zeroed

Re: [PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-10-20 Thread Andy Lutomirski
On Wed, Sep 21, 2016 at 8:43 AM, Roman Pen wrote: > If panic_on_oops is not set and oops happens inside workqueue kthread, > kernel kills this kthread. Current patch fixes recursive GPF which > happens in that case with the following stack: Oleg, can you take a

Re: [PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-10-20 Thread Andy Lutomirski
On Wed, Sep 21, 2016 at 8:43 AM, Roman Pen wrote: > If panic_on_oops is not set and oops happens inside workqueue kthread, > kernel kills this kthread. Current patch fixes recursive GPF which > happens in that case with the following stack: Oleg, can you take a look at this? --Andy > > []

[PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-09-21 Thread Roman Pen
If panic_on_oops is not set and oops happens inside workqueue kthread, kernel kills this kthread. Current patch fixes recursive GPF which happens in that case with the following stack: [] dump_stack+0x68/0x93 [] ? do_exit+0x7ab/0xc10 [] __schedule_bug+0x83/0xe0 [] __schedule+0x7ea/0xba0

[PATCH 2/2] sched: do not call workqueue sleep hook if task is already dead

2016-09-21 Thread Roman Pen
If panic_on_oops is not set and oops happens inside workqueue kthread, kernel kills this kthread. Current patch fixes recursive GPF which happens in that case with the following stack: [] dump_stack+0x68/0x93 [] ? do_exit+0x7ab/0xc10 [] __schedule_bug+0x83/0xe0 [] __schedule+0x7ea/0xba0