diff mbox

kworker with empty task->cpus_allowed (was Re: [v4.12-rc1 regression] mount ext4 fs results in kernel crash on PPC64le host)

Message ID 87r2xwxxyo.fsf@concordia.ellerman.id.au (mailing list archive)
State Not Applicable
Headers show

Commit Message

Michael Ellerman July 4, 2017, 11:06 a.m. UTC
Eryu Guan <eguan@redhat.com> writes:

> On Tue, Jul 04, 2017 at 04:26:11PM +1000, Michael Ellerman wrote:
>> Eryu Guan <eguan@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

Comments

Eryu Guan July 4, 2017, 12:12 p.m. UTC | #1
On Tue, Jul 04, 2017 at 09:06:55PM +1000, Michael Ellerman wrote:
> Eryu Guan <eguan@redhat.com> writes:
> 
> > On Tue, Jul 04, 2017 at 04:26:11PM +1000, Michael Ellerman wrote:
> >> Eryu Guan <eguan@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]);
>  	}
>  }
> 
>
diff mbox

Patch

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]);
 	}
 }