================================================================== BUG: KASAN: use-after-free in __read_once_size include/linux/compiler.h:183 [inline] BUG: KASAN: use-after-free in bpf_fd_array_map_lookup_elem+0x440/0x4c0 kernel/bpf/arraymap.c:374 Read of size 8 at addr ffff8801c6e944b8 by task syz-executor6/9219 CPU: 0 PID: 9219 Comm: syz-executor6 Not tainted 4.15.0-rc7+ #262 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 print_address_description+0x73/0x250 mm/kasan/report.c:252 binder_alloc: binder_alloc_mmap_handler: 9225 20000000-20002000 already mapped failed -16 binder: BINDER_SET_CONTEXT_MGR already set binder: 9225:9226 ioctl 40046207 0 returned -16 binder_alloc: 9225: binder_alloc_buf, no vma binder: 9225:9227 transaction failed 29189/-3, size 80-16 line 2903 binder: 9225:9226 IncRefs 0 refcount change on invalid ref 2 ret -22 binder: release 9225:9226 transaction 24 out, still active binder: send failed reply for transaction 24, target dead kasan_report_error mm/kasan/report.c:351 [inline] kasan_report+0x25b/0x340 mm/kasan/report.c:409 __asan_report_load8_noabort+0x14/0x20 mm/kasan/report.c:430 __read_once_size include/linux/compiler.h:183 [inline] bpf_fd_array_map_lookup_elem+0x440/0x4c0 kernel/bpf/arraymap.c:374 map_lookup_elem+0x6b5/0xbd0 kernel/bpf/syscall.c:577 SYSC_bpf kernel/bpf/syscall.c:1711 [inline] SyS_bpf+0x922/0x4400 kernel/bpf/syscall.c:1685 entry_SYSCALL_64_fastpath+0x29/0xa0 RIP: 0033:0x452cf9 RSP: 002b:00007fa0f5b7fc58 EFLAGS: 00000212 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000452cf9 RDX: 0000000000000018 RSI: 00000000206d1fe8 RDI: 0000000000000001 RBP: 00000000000005da R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000212 R12: 00000000006f6d10 R13: 00000000ffffffff R14: 00007fa0f5b806d4 R15: 0000000000000000 Allocated by task 5965: save_stack+0x43/0xd0 mm/kasan/kasan.c:447 set_track mm/kasan/kasan.c:459 [inline] kasan_kmalloc+0xad/0xe0 mm/kasan/kasan.c:551 kmem_cache_alloc_trace+0x136/0x750 mm/slab.c:3610 kmalloc include/linux/slab.h:499 [inline] kzalloc include/linux/slab.h:688 [inline] superblock_alloc_security security/selinux/hooks.c:391 [inline] selinux_sb_alloc_security+0x93/0x2e0 security/selinux/hooks.c:2647 security_sb_alloc+0x6d/0xa0 security/security.c:357 alloc_super fs/super.c:213 [inline] sget_userns+0x3a9/0xe40 fs/super.c:502 sget+0xd2/0x120 fs/super.c:557 mount_nodev+0x37/0x100 fs/super.c:1160 ramfs_mount+0x2c/0x40 fs/ramfs/inode.c:253 mount_fs+0x66/0x2d0 fs/super.c:1222 vfs_kern_mount.part.26+0xc6/0x4a0 fs/namespace.c:1037 vfs_kern_mount fs/namespace.c:2509 [inline] do_new_mount fs/namespace.c:2512 [inline] do_mount+0xea4/0x2bb0 fs/namespace.c:2842 SYSC_mount fs/namespace.c:3058 [inline] SyS_mount+0xab/0x120 fs/namespace.c:3035 entry_SYSCALL_64_fastpath+0x29/0xa0 Freed by task 4793: save_stack+0x43/0xd0 mm/kasan/kasan.c:447 set_track mm/kasan/kasan.c:459 [inline] kasan_slab_free+0x71/0xc0 mm/kasan/kasan.c:524 __cache_free mm/slab.c:3488 [inline] kfree+0xd6/0x260 mm/slab.c:3803 superblock_free_security security/selinux/hooks.c:411 [inline] selinux_sb_free_security+0x42/0x50 security/selinux/hooks.c:2652 security_sb_free+0x48/0x80 security/security.c:362 __put_super.part.5+0x2a0/0x4b0 fs/super.c:273 __put_super fs/super.c:268 [inline] put_super+0x53/0x70 fs/super.c:290 deactivate_locked_super+0xb0/0xd0 fs/super.c:323 deactivate_super+0x141/0x1b0 fs/super.c:343 cleanup_mnt+0xb2/0x150 fs/namespace.c:1173 __cleanup_mnt+0x16/0x20 fs/namespace.c:1180 task_work_run+0x199/0x270 kernel/task_work.c:113 tracehook_notify_resume include/linux/tracehook.h:191 [inline] exit_to_usermode_loop+0x296/0x310 arch/x86/entry/common.c:162 prepare_exit_to_usermode arch/x86/entry/common.c:195 [inline] syscall_return_slowpath+0x490/0x550 arch/x86/entry/common.c:264 entry_SYSCALL_64_fastpath+0x9e/0xa0 The buggy address belongs to the object at ffff8801c6e943c0 which belongs to the cache kmalloc-256 of size 256 The buggy address is located 248 bytes inside of 256-byte region [ffff8801c6e943c0, ffff8801c6e944c0) The buggy address belongs to the page: page:ffffea00071ba500 count:1 mapcount:0 mapping:ffff8801c6e94000 index:0x0 flags: 0x2fffc0000000100(slab) raw: 02fffc0000000100 ffff8801c6e94000 0000000000000000 000000010000000c raw: ffffea00071beda0 ffffea0006f59820 ffff8801dac007c0 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8801c6e94380: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb ffff8801c6e94400: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb >ffff8801c6e94480: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc ^ ffff8801c6e94500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff8801c6e94580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ==================================================================