kworker with empty task->cpus_allowed (was Re: [v4.12-rc1 regression] mount ext4 fs results in kernel crash on PPC64le host)
Eryu Guan
eguan at redhat.com
Tue Jul 4 22:12:36 AEST 2017
On Tue, Jul 04, 2017 at 09:06:55PM +1000, Michael Ellerman wrote:
> Eryu Guan <eguan at redhat.com> writes:
>
> > On Tue, Jul 04, 2017 at 04:26:11PM +1000, Michael Ellerman wrote:
> >> Eryu Guan <eguan at redhat.com> writes:
> >> > On Fri, Jun 30, 2017 at 08:07:02PM +1000, Michael Ellerman wrote:
> >> >>
> >> >> Can you try this patch and see if it changes anything? (with the debug
> >> >> still applied).
> >> >
> >> > This patch fixes the crash for me. After appliying this patch (with all
> >> > other debug patches still applied), kernel didn't print any warnings or
> >> > calltraces or debug messages.
> >>
> >> OK. It's not meant to fix it :)
> >
> > Understand.
> >
> >>
> >> I can't form any connection between your bisection result and that
> >> patch, nothing is making any sense TBH.
> >>
> >> What hardware are you on? And are you doing CPU hotplug or anything like that?
> >
> > It's a "PowerVM" guest (I'm not familiar with powerpc, I don't know what
> > does that mean..) running on Power8 host. I didn't do any CPU hotplug or
> > anything like that.
>
> OK thanks.
>
> We might have to try and sync up on irc so we can debug this a bit faster.
Sure, where can I find you? I'm in #xfs at freenode, nick eguan. But
maybe tomorrow, I have to take off today.
>
> Can you try this hunk also?
This new WARN_ON didn't trigger (I skipped the other warning messages,
they're the same warnings as in my last reply).
Thanks,
Eryu
>
> cheers
>
> diff --git a/kernel/workqueue.c b/kernel/workqueue.c
> index c74bf39ef764..7c55721b1f1d 100644
> --- a/kernel/workqueue.c
> +++ b/kernel/workqueue.c
> @@ -3902,6 +3906,7 @@ static int alloc_and_link_pwqs(struct workqueue_struct *wq)
> "ordering guarantee broken for workqueue %s\n", wq->name);
> return ret;
> } else {
> + WARN_ON(cpumask_empty(unbound_std_wq_attrs[highpri]->cpumask));
> return apply_workqueue_attrs(wq, unbound_std_wq_attrs[highpri]);
> }
> }
>
>
More information about the Linuxppc-dev
mailing list