Re: [syzbot] general protection fault in gfn_to_rmap (2)

From: Sean Christopherson
Date: Tue Jun 08 2021 - 12:49:25 EST


On Tue, Jun 08, 2021, syzbot wrote:
> Hello,
>
> syzbot found the following issue on:
>
> HEAD commit: 614124be Linux 5.13-rc5
> git tree: upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=14a62298300000
> kernel config: https://syzkaller.appspot.com/x/.config?x=547a5e42ca601229
> dashboard link: https://syzkaller.appspot.com/bug?extid=fb0b6a7e8713aeb0319c
> compiler: Debian clang version 11.0.1-2
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=11395057d00000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=12d2b797d00000
>
> The issue was bisected to:
>
> commit 9ec19493fb86d6d5fbf9286b94ff21e56ef66376
> Author: Sean Christopherson <sean.j.christopherson@xxxxxxxxx>
> Date: Tue Apr 2 15:03:11 2019 +0000
>
> KVM: x86: clear SMM flags before loading state while leaving SMM
>
> bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=1437f9bbd00000
> final oops: https://syzkaller.appspot.com/x/report.txt?x=1637f9bbd00000
> console output: https://syzkaller.appspot.com/x/log.txt?x=1237f9bbd00000
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+fb0b6a7e8713aeb0319c@xxxxxxxxxxxxxxxxxxxxxxxxx
> Fixes: 9ec19493fb86 ("KVM: x86: clear SMM flags before loading state while leaving SMM")
>
> L1TF CPU bug present and SMT on, data leak possible. See CVE-2018-3646 and https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html for details.
> general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN
> KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
> CPU: 1 PID: 8410 Comm: syz-executor382 Not tainted 5.13.0-rc5-syzkaller #0
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> RIP: 0010:__gfn_to_rmap arch/x86/kvm/mmu/mmu.c:935 [inline]

Oh joy. SMM, rmaps, and memslots. I'll take this one...