Re: memory leak in do_eventfd

From: Eric Biggers
Date: Fri Jun 05 2020 - 00:24:06 EST


[+Cc kvm mailing list]

On Wed, May 20, 2020 at 06:12:17PM -0700, syzbot wrote:
> Hello,
>
> syzbot found the following crash on:
>
> HEAD commit: 5a9ffb95 Merge tag '5.7-rc5-smb3-fixes' of git://git.samba..
> git tree: upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=10b72a02100000
> kernel config: https://syzkaller.appspot.com/x/.config?x=f8295ae5b3f8268d
> dashboard link: https://syzkaller.appspot.com/bug?extid=f196caa45793d6374707
> compiler: gcc (GCC) 9.0.0 20181231 (experimental)
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=17585b76100000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=12500a02100000
>
> IMPORTANT: if you fix the bug, please add the following tag to the commit:
> Reported-by: syzbot+f196caa45793d6374707@xxxxxxxxxxxxxxxxxxxxxxxxx
>
> BUG: memory leak
> unreferenced object 0xffff888117169ac0 (size 64):
> comm "syz-executor012", pid 6609, jiffies 4294942172 (age 13.720s)
> hex dump (first 32 bytes):
> 01 00 00 00 ff ff ff ff 00 00 00 00 00 c9 ff ff ................
> d0 9a 16 17 81 88 ff ff d0 9a 16 17 81 88 ff ff ................
> backtrace:
> [<00000000351bb234>] kmalloc include/linux/slab.h:555 [inline]
> [<00000000351bb234>] do_eventfd+0x35/0xf0 fs/eventfd.c:418
> [<00000000c2f69a77>] __do_sys_eventfd fs/eventfd.c:443 [inline]
> [<00000000c2f69a77>] __se_sys_eventfd fs/eventfd.c:441 [inline]
> [<00000000c2f69a77>] __x64_sys_eventfd+0x14/0x20 fs/eventfd.c:441
> [<0000000086d6f989>] do_syscall_64+0x6e/0x220 arch/x86/entry/common.c:295
> [<000000006c5bcb63>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
>
> BUG: memory leak
> unreferenced object 0xffff888117169100 (size 64):
> comm "syz-executor012", pid 6609, jiffies 4294942172 (age 13.720s)
> hex dump (first 32 bytes):
> e8 99 dd 00 00 c9 ff ff e8 99 dd 00 00 c9 ff ff ................
> 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 ... ............
> backtrace:
> [<00000000436d2955>] kmalloc include/linux/slab.h:555 [inline]
> [<00000000436d2955>] kzalloc include/linux/slab.h:669 [inline]
> [<00000000436d2955>] kvm_assign_ioeventfd_idx+0x4f/0x270 arch/x86/kvm/../../../virt/kvm/eventfd.c:798
> [<00000000e89390cc>] kvm_assign_ioeventfd arch/x86/kvm/../../../virt/kvm/eventfd.c:934 [inline]
> [<00000000e89390cc>] kvm_ioeventfd+0xbb/0x194 arch/x86/kvm/../../../virt/kvm/eventfd.c:961
> [<00000000ba9f6732>] kvm_vm_ioctl+0x1e6/0x1030 arch/x86/kvm/../../../virt/kvm/kvm_main.c:3670
> [<000000005da94937>] vfs_ioctl fs/ioctl.c:47 [inline]
> [<000000005da94937>] ksys_ioctl+0xa6/0xd0 fs/ioctl.c:771
> [<00000000a583d097>] __do_sys_ioctl fs/ioctl.c:780 [inline]
> [<00000000a583d097>] __se_sys_ioctl fs/ioctl.c:778 [inline]
> [<00000000a583d097>] __x64_sys_ioctl+0x1a/0x20 fs/ioctl.c:778
> [<0000000086d6f989>] do_syscall_64+0x6e/0x220 arch/x86/entry/common.c:295
> [<000000006c5bcb63>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
>
>
>
> ---
> 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.
> syzbot can test patches for this bug, for details see:
> https://goo.gl/tpsmEJ#testing-patches
>
> --
> You received this message because you are subscribed to the Google Groups "syzkaller-bugs" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to syzkaller-bugs+unsubscribe@xxxxxxxxxxxxxxxxx
> To view this discussion on the web visit https://groups.google.com/d/msgid/syzkaller-bugs/0000000000001daa8d05a61e3440%40google.com.