Re: [regression] boot failure on alpha, bisected

Geert Uytterhoeven
2012-10-08T18:59:14Z

On Sun, Oct 7, 2012 at 9:16 PM, Oleg Nesterov <oleg@redhat.com> wrote:
> On 10/07, Thorsten Kranzkowski wrote:
>> On Sun, Oct 07, 2012 at 07:13:00PM +0200, Oleg Nesterov wrote:
>> > On 10/07, Oleg Nesterov wrote:
>> > > Hmm. I know nothing about arch/alpha and I can't understand its entry.S.
>> > > But _it seems_ to me that do_notify_resume() is called with irqs disabled.
>> > > If this is true, then imho arch/alpha should be fixed.
>> > >
>> > > Before this commit task_work_run() enabled irqs, but this was the "side
>> > > effect" of spin_lock_irq/spin_unlock_irq, we should not rely on this.
>> >
>> > Could you please test the debugging patch below?
>>
>> Of course. With that patch applied the kernel (ac3d0da) boots again. The trace line
>> is printed about once a second, with values '2' and '4'.
>
> Thanks a lot Thorsten!
>
> So I'll probably send the patch which enables interrupts in
> task_work_run(). I guess this needs "if (irqs_disabled())"
> for lockdep.
>
> The question is, should I add the warning to remind that this
> arch needs a fix?

Just wondering. As this is on an SMP system, perhaps the
read_barrier_depends() vs. smp_read_barrier_depends() matters
here?
http://lkml.indiana.edu/hypermail/linux/kernel/1209.3/00555.html

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds