lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 08 Jul 2021 15:03:45 +0200
From:   Thomas Gleixner <tglx@...utronix.de>
To:     syzbot <syzbot+a3fcd59df1b372066f5a@...kaller.appspotmail.com>,
        akpm@...ux-foundation.org, bp@...en8.de, hpa@...or.com,
        jmattson@...gle.com, joro@...tes.org, kvm@...r.kernel.org,
        linux-kernel@...r.kernel.org, linux-mm@...ck.org,
        mark.rutland@....com, masahiroy@...nel.org, mingo@...hat.com,
        pbonzini@...hat.com, peterz@...radead.org,
        rafael.j.wysocki@...el.com, rostedt@...dmis.org, seanjc@...gle.com,
        sedat.dilek@...il.com, syzkaller-bugs@...glegroups.com,
        vitor@...saru.org, vkuznets@...hat.com, wanpengli@...cent.com,
        will@...nel.org, x86@...nel.org
Subject: Re: [syzbot] general protection fault in try_grab_compound_head

On Sat, Jul 03 2021 at 13:24, syzbot wrote:
> syzbot has bisected this issue to:
>
> commit 997acaf6b4b59c6a9c259740312a69ea549cc684
> Author: Mark Rutland <mark.rutland@....com>
> 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
 pv_wait arch/x86/include/asm/paravirt.h:564 [inline]
 pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:470 [inline]
 __pv_queued_spin_lock_slowpath+0x8b8/0xb40 kernel/locking/qspinlock.c:508
 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:554 [inline]
 queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline]
 queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
 do_raw_spin_lock+0x200/0x2b0 kernel/locking/spinlock_debug.c:113
 spin_lock include/linux/spinlock.h:354 [inline]
 alloc_huge_page+0x2b0/0xda0 mm/hugetlb.c:2318
 hugetlb_no_page mm/hugetlb.c:4323 [inline]
 hugetlb_fault+0xc35/0x1cd0 mm/hugetlb.c:4523
 follow_hugetlb_page+0x317/0xda0 mm/hugetlb.c:4836
 __get_user_pages+0x3fa/0xe30 mm/gup.c:1041
 __get_user_pages_locked mm/gup.c:1256 [inline]
 __gup_longterm_locked+0x15f/0xc80 mm/gup.c:1667
 io_sqe_buffer_register fs/io_uring.c:8462 [inline]
 __io_uring_register fs/io_uring.c:9901 [inline]
 __do_sys_io_uring_register+0xeb1/0x3350 fs/io_uring.c:10000
 do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

Thanks,

        tglx

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ