kworker with empty task->cpus_allowed (was Re: [v4.12-rc1 regression] mount ext4 fs results in kernel crash on PPC64le host)
Michael Ellerman
mpe at ellerman.id.au
Tue Jul 4 21:06:55 AEST 2017
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.
Can you try this hunk also?
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