Re: [REGRESSION] Boot hang with 939f04bec printk: enable interrupts before calling console_trylock_for_printk()

From: Jan Kara
Date: Thu Jul 17 2014 - 04:31:57 EST


On Wed 16-07-14 23:34:08, Andreas Bombe wrote:
> On Mon, Jul 14, 2014 at 10:35:27AM +0200, Jan Kara wrote:
> > On Sun 29-06-14 00:50:50, Andreas Bombe wrote:
> > > None of the post 3.15 kernel boot for me. They all hang at the GRUB
> > > screen telling me it loaded and started the kernel, but the kernel
> > > itself stops before it prints anything (or even replaces the GRUB
> > > background graphics).
> > >
> > > I bisected it down to 939f04bec1a4ef6ba4370b0f34b01decc844b1b1 "printk:
> > > enable interrupts before calling console_trylock_for_printk()".
> > > Reverting that patch on the latest kernel (git 24b414d5a7) allows me to
> > > boot normally. I fixed the conflict in the revert by leaving in the "if
> > > (in_sched) return printed_len;".
> > >
> > > I have the "early printk via the EFI framebuffer" option enabled,
> > > disabling it made no difference however.
> > Thanks for report. I've been on vacation so I'm replying with a delay. I
> > believe this is one of the issues where this patch just uncovers underlying
> > problem - I belive lockdep tries to report some locking issue in console
> > driver code (this patch increased lockdep coverage of console driver code)
> > however we are holding some locks in printk code which make lockdep
> > deadlock. Can you try running with the attached patch?
>
> EUNABLE
>
> You forgot to attach a patch.
Bah, sorry. Attaching now.

Honza
--
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR