bisecting fixing commit since 0319b848b155185815724e1b46103c550627a845 building syzkaller on d236a457274375e5273ac4e958722659929c469f testing commit 0319b848b155185815724e1b46103c550627a845 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: eaab42751bcb0f6696ad278b3528afb6e039f9b47fbc6bc37853ebdefe6e9ff1 run #0: crashed: general protection fault in rcu_segcblist_enqueue run #1: OK run #2: OK run #3: OK run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK reproducer seems to be flaky testing current HEAD 60a9483534ed0d99090a2ee1d4bb0b8179195f51 testing commit 60a9483534ed0d99090a2ee1d4bb0b8179195f51 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: c603c2f082f61421a0845568ed976e25798e883f598bb4e1bc05656588115061 all runs: OK # git bisect start 60a9483534ed0d99090a2ee1d4bb0b8179195f51 0319b848b155185815724e1b46103c550627a845 Bisecting: 1409 revisions left to test after this (roughly 11 steps) [4a86d41404005a3c7e7b6065e8169ac6202887a9] perf tools: Allow build-id with trailing zeros testing commit 4a86d41404005a3c7e7b6065e8169ac6202887a9 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 5a7f60768cd1c65875444b7fa9cca2abc255544bb72ed365df6dfe00523d7829 run #0: OK run #1: OK run #2: OK run #3: OK run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: boot failed: KFENCE: use-after-free in kvm_fastop_exception # git bisect bad 4a86d41404005a3c7e7b6065e8169ac6202887a9 Bisecting: 671 revisions left to test after this (roughly 10 steps) [626bf91a292e2035af5b9d9cce35c5c138dfe06d] Merge tag 'net-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net testing commit 626bf91a292e2035af5b9d9cce35c5c138dfe06d compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: aea0135815c70be65711413dff65cf5463f23fdecb70ebc9e895f2010ea4e2c8 all runs: OK # git bisect bad 626bf91a292e2035af5b9d9cce35c5c138dfe06d Bisecting: 378 revisions left to test after this (roughly 9 steps) [5e6a5845dd651b00754a62edec2f0a439182024d] Merge tag 'gpio-updates-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux testing commit 5e6a5845dd651b00754a62edec2f0a439182024d compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 308e2302235fffc17267b4e32d5cdbec25600aa777cada8033c5bb7acdffba36 run #0: crashed: BUG: spinlock bad magic in synchronize_srcu run #1: OK run #2: OK run #3: OK run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK # git bisect good 5e6a5845dd651b00754a62edec2f0a439182024d Bisecting: 156 revisions left to test after this (roughly 8 steps) [e99314a340d27efafab3b7ea226beb239162cd46] Merge tag 'kvmarm-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD testing commit e99314a340d27efafab3b7ea226beb239162cd46 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: eacb425775a0bcb9ead8e2e559aeddf6afb20a96863081679a12f1754063060d all runs: OK # git bisect bad e99314a340d27efafab3b7ea226beb239162cd46 Bisecting: 110 revisions left to test after this (roughly 7 steps) [0176ec51290f8ef543a8c18a02e932d6ccedbbc5] KVM: stats: Update doc for histogram statistics testing commit 0176ec51290f8ef543a8c18a02e932d6ccedbbc5 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: dfd9678c85d24545970851d0bc8ea6e12c3f8f4e49e7e97f681385e8d73a6eb5 all runs: OK # git bisect bad 0176ec51290f8ef543a8c18a02e932d6ccedbbc5 Bisecting: 55 revisions left to test after this (roughly 6 steps) [84ec8d2d539f7286d4504c2d377002f1ea7458d6] KVM: VMX: Smush x2APIC MSR bitmap adjustments into single function testing commit 84ec8d2d539f7286d4504c2d377002f1ea7458d6 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 0a942c23e84b16ae278a173ef8dea2b55d8fbb37df97b160de7b9e1768e3c1f6 all runs: OK # git bisect bad 84ec8d2d539f7286d4504c2d377002f1ea7458d6 Bisecting: 27 revisions left to test after this (roughly 5 steps) [0214f6bbe564632adba299e38023d681c1bd68c5] KVM: x86: Migrate the PIT only if vcpu0 is migrated, not any BSP testing commit 0214f6bbe564632adba299e38023d681c1bd68c5 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 3d0b5a37800dc5a3e24a0c3ceebb7e3c65a372c6bbc612913b3811eb77a2eee1 all runs: OK # git bisect bad 0214f6bbe564632adba299e38023d681c1bd68c5 Bisecting: 13 revisions left to test after this (roughly 4 steps) [c5c8c7c53004cb70715320018c3b4287071c1cfd] KVM: x86/mmu: Make walk_shadow_page_lockless_{begin,end} interoperate with the TDP MMU testing commit c5c8c7c53004cb70715320018c3b4287071c1cfd compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 7d796439aea987349d84e67ad62c94d63d681f26d19e7cf1a98e0421a0488524 run #0: crashed: BUG: spinlock bad magic in synchronize_srcu run #1: OK run #2: OK run #3: OK run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK # git bisect good c5c8c7c53004cb70715320018c3b4287071c1cfd Bisecting: 6 revisions left to test after this (roughly 3 steps) [2a24be79b6b7061a486239c3a3489eb67b9587f6] KVM: VMX: Set EDX at INIT with CPUID.0x1, Family-Model-Stepping testing commit 2a24be79b6b7061a486239c3a3489eb67b9587f6 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 39292547db89e0f1edd86af8ccce002eba02c7f6322070cfb3b2e65da8331dcf run #0: crashed: BUG: sleeping function called from invalid context in lock_sock_nested run #1: OK run #2: OK run #3: OK run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK # git bisect good 2a24be79b6b7061a486239c3a3489eb67b9587f6 Bisecting: 3 revisions left to test after this (roughly 2 steps) [61152cd907d59ffd6b0a9479b2fa3b3b7b080409] KVM: VMX: Remove explicit MMU reset in enter_rmode() testing commit 61152cd907d59ffd6b0a9479b2fa3b3b7b080409 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: cc378526ef832ae7891eaf33dd1add9c9557af92176509699660225cdd0fadf4 all runs: OK # git bisect bad 61152cd907d59ffd6b0a9479b2fa3b3b7b080409 Bisecting: 0 revisions left to test after this (roughly 1 step) [665f4d9238ad83c36dd4e078ccab45b3ddec211d] KVM: SVM: Fall back to KVM's hardcoded value for EDX at RESET/INIT testing commit 665f4d9238ad83c36dd4e078ccab45b3ddec211d compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 7f4e50321edadf323ca3cb4657ede37f8c03a3a5100e2977fb4fab7b7c841bd8 all runs: OK # git bisect bad 665f4d9238ad83c36dd4e078ccab45b3ddec211d Bisecting: 0 revisions left to test after this (roughly 0 steps) [067a456d091d05fdae32cae350410d905968b645] KVM: SVM: Require exact CPUID.0x1 match when stuffing EDX at INIT testing commit 067a456d091d05fdae32cae350410d905968b645 compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.35.2 kernel signature: 34dde558ececbd02e8fa5e2f6b0d55708d7fb13bb2e1729d33cab30ec5fe6d56 all runs: OK # git bisect bad 067a456d091d05fdae32cae350410d905968b645 067a456d091d05fdae32cae350410d905968b645 is the first bad commit commit 067a456d091d05fdae32cae350410d905968b645 Author: Sean Christopherson Date: Tue Jul 13 09:32:43 2021 -0700 KVM: SVM: Require exact CPUID.0x1 match when stuffing EDX at INIT Do not allow an inexact CPUID "match" when querying the guest's CPUID.0x1 to stuff EDX during INIT. In the common case, where the guest CPU model is an AMD variant, allowing an inexact match is a nop since KVM doesn't emulate Intel's goofy "out-of-range" logic for AMD and Hygon. If the vCPU model happens to be an Intel variant, an inexact match is possible if and only if the max CPUID leaf is precisely '0'. Aside from the fact that there's probably no CPU in existence with a single CPUID leaf, if the max CPUID leaf is '0', that means that CPUID.0.EAX is '0', and thus an inexact match for CPUID.0x1.EAX will also yield '0'. So, with lots of twisty logic, no functional change intended. Reviewed-by: Reiji Watanabe Signed-off-by: Sean Christopherson Message-Id: <20210713163324.627647-6-seanjc@google.com> Signed-off-by: Paolo Bonzini arch/x86/kvm/svm/svm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) culprit signature: 34dde558ececbd02e8fa5e2f6b0d55708d7fb13bb2e1729d33cab30ec5fe6d56 parent signature: 39292547db89e0f1edd86af8ccce002eba02c7f6322070cfb3b2e65da8331dcf Reproducer flagged being flaky revisions tested: 14, total time: 3h49m10.03381186s (build: 1h36m52.373688005s, test: 2h10m53.129881946s) first good commit: 067a456d091d05fdae32cae350410d905968b645 KVM: SVM: Require exact CPUID.0x1 match when stuffing EDX at INIT recipients (to): ["pbonzini@redhat.com" "reijiw@google.com" "seanjc@google.com"] recipients (cc): []