KASAN: null-ptr-deref Read in kvm_vfio_set_attr

From: syzbot
Date: Fri Mar 27 2020 - 04:30:20 EST


Hello,

syzbot found the following crash on:

HEAD commit: 770fbb32 Add linux-next specific files for 20200228
git tree: linux-next
console output: https://syzkaller.appspot.com/x/log.txt?x=16974813e00000
kernel config: https://syzkaller.appspot.com/x/.config?x=576314276bce4ad5
dashboard link: https://syzkaller.appspot.com/bug?extid=c8f52ab16178cebd5f5c
compiler: gcc (GCC) 9.0.0 20181231 (experimental)
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=14fa5e75e00000

Bisection is inconclusive: the bug happens on the oldest tested release.

bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=14eeae75e00000
final crash: https://syzkaller.appspot.com/x/report.txt?x=16eeae75e00000
console output: https://syzkaller.appspot.com/x/log.txt?x=12eeae75e00000

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+c8f52ab16178cebd5f5c@xxxxxxxxxxxxxxxxxxxxxxxxx

==================================================================
BUG: KASAN: null-ptr-deref in kvm_vfio_set_group arch/x86/kvm/../../../virt/kvm/vfio.c:235 [inline]
BUG: KASAN: null-ptr-deref in kvm_vfio_set_attr+0x7da/0xa30 arch/x86/kvm/../../../virt/kvm/vfio.c:337
Read of size 8 at addr 0000000000000000 by task syz-executor.2/9641

CPU: 0 PID: 9641 Comm: syz-executor.2 Not tainted 5.6.0-rc3-next-20200228-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
<IRQ>
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x188/0x20d lib/dump_stack.c:118
__kasan_report.cold+0x5/0x32 mm/kasan/report.c:510
kasan_report+0xe/0x20 mm/kasan/common.c:618
kvm_vfio_set_group arch/x86/kvm/../../../virt/kvm/vfio.c:235 [inline]
kvm_vfio_set_attr+0x7da/0xa30 arch/x86/kvm/../../../virt/kvm/vfio.c:337
</IRQ>
==================================================================
Kernel panic - not syncing: panic_on_warn set ...
CPU: 0 PID: 9641 Comm: syz-executor.2 Tainted: G B 5.6.0-rc3-next-20200228-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
<IRQ>
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x188/0x20d lib/dump_stack.c:118
panic+0x2e3/0x75c kernel/panic.c:221
end_report+0x43/0x49 mm/kasan/report.c:96
__kasan_report.cold+0xd/0x32 mm/kasan/report.c:513
kasan_report+0xe/0x20 mm/kasan/common.c:618
kvm_vfio_set_group arch/x86/kvm/../../../virt/kvm/vfio.c:235 [inline]
kvm_vfio_set_attr+0x7da/0xa30 arch/x86/kvm/../../../virt/kvm/vfio.c:337
</IRQ>
Shutting down cpus with NMI
Kernel Offset: disabled
Rebooting in 86400 seconds..


---
This bug is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzkaller@xxxxxxxxxxxxxxxxx

syzbot will keep track of this bug report. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
For information about bisection process see: https://goo.gl/tpsmEJ#bisection
syzbot can test patches for this bug, for details see:
https://goo.gl/tpsmEJ#testing-patches