Re: [syzbot] general protection fault in try_grab_compound_head

From: Sean Christopherson
Date: Mon Jul 12 2021 - 17:29:07 EST


On Thu, Jul 08, 2021, Thomas Gleixner wrote:
> On Sat, Jul 03 2021 at 13:24, syzbot wrote:
> > syzbot has bisected this issue to:
> >
> > commit 997acaf6b4b59c6a9c259740312a69ea549cc684
> > Author: Mark Rutland <mark.rutland@xxxxxxx>
> > Date: Mon Jan 11 15:37:07 2021 +0000
> >
> > lockdep: report broken irq restoration
>
> That's the commit which makes the underlying problem visible:
>
> raw_local_irq_restore() called with IRQs enabled
>
> and is triggered by this call chain:
>
> kvm_wait arch/x86/kernel/kvm.c:860 [inline]
> kvm_wait+0xc3/0xe0 arch/x86/kernel/kvm.c:837

And the bug in kvm_wait() was fixed by commit f4e61f0c9add ("x86/kvm: Fix broken
irq restoration in kvm_wait"). The bisection is bad, syzbot happened into the
kvm_wait() WARN and got distracted. The original #GP looks stable, if someone
from mm land has bandwidth.