================================================================== BUG: KASAN: use-after-free in do_get_mempolicy+0xb41/0xba0 mm/mempolicy.c:938 at addr ffff8801dac870a6 Read of size 2 by task syz-executor2/4283 CPU: 0 PID: 4283 Comm: syz-executor2 Not tainted 4.9.39-g5b07c2d #4 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 ffff8801ba157cf8 ffffffff81eacd59 ffff8801dac0ec80 ffff8801dac870a0 ffff8801dac870b8 ffffed003b590e14 ffff8801dac870a6 ffff8801ba157d20 ffffffff81546bfc ffffed003b590e14 ffff8801dac0ec80 0000000000000000 Call Trace: [] __dump_stack lib/dump_stack.c:15 [inline] [] dump_stack+0xc1/0x128 lib/dump_stack.c:51 [] kasan_object_err+0x1c/0x70 mm/kasan/report.c:160 [] print_address_description mm/kasan/report.c:198 [inline] [] kasan_report_error mm/kasan/report.c:287 [inline] [] kasan_report.part.1+0x20d/0x4e0 mm/kasan/report.c:309 [] kasan_report mm/kasan/report.c:328 [inline] [] __asan_report_load2_noabort+0x29/0x30 mm/kasan/report.c:328 [] do_get_mempolicy+0xb41/0xba0 mm/mempolicy.c:938 [] SYSC_get_mempolicy mm/mempolicy.c:1479 [inline] [] SyS_get_mempolicy+0xc3/0x190 mm/mempolicy.c:1468 [] entry_SYSCALL_64_fastpath+0x23/0xc6 Object at ffff8801dac870a0, in cache numa_policy size: 24 Allocated: PID = 4276 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:495 set_track mm/kasan/kasan.c:507 [inline] kasan_kmalloc+0xad/0xe0 mm/kasan/kasan.c:598 kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:537 slab_post_alloc_hook mm/slab.h:417 [inline] slab_alloc_node mm/slub.c:2715 [inline] slab_alloc mm/slub.c:2723 [inline] kmem_cache_alloc+0xc9/0x2a0 mm/slub.c:2728 __mpol_dup+0x79/0x3c0 mm/mempolicy.c:2104 mpol_dup include/linux/mempolicy.h:89 [inline] vma_replace_policy mm/mempolicy.c:703 [inline] mbind_range mm/mempolicy.c:776 [inline] do_mbind+0x71e/0xb30 mm/mempolicy.c:1240 SYSC_mbind mm/mempolicy.c:1349 [inline] SyS_mbind+0x13b/0x150 mm/mempolicy.c:1331 entry_SYSCALL_64_fastpath+0x23/0xc6 Freed: PID = 4262 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:495 set_track mm/kasan/kasan.c:507 [inline] kasan_slab_free+0x73/0xc0 mm/kasan/kasan.c:571 slab_free_hook mm/slub.c:1355 [inline] slab_free_freelist_hook mm/slub.c:1377 [inline] slab_free mm/slub.c:2958 [inline] kmem_cache_free+0xb2/0x2e0 mm/slub.c:2980 __mpol_put+0x26/0x30 mm/mempolicy.c:299 mpol_put include/linux/mempolicy.h:67 [inline] remove_vma+0x12b/0x1a0 mm/mmap.c:174 remove_vma_list mm/mmap.c:2482 [inline] do_munmap+0x7ff/0xeb0 mm/mmap.c:2705 mmap_region+0x14d/0xfe0 mm/mmap.c:1635 do_mmap+0x595/0xbe0 mm/mmap.c:1473 do_mmap_pgoff include/linux/mm.h:2014 [inline] vm_mmap_pgoff+0x158/0x1a0 mm/util.c:305 SYSC_mmap_pgoff mm/mmap.c:1523 [inline] SyS_mmap_pgoff+0x1fc/0x580 mm/mmap.c:1481 SYSC_mmap arch/x86/kernel/sys_x86_64.c:95 [inline] SyS_mmap+0x16/0x20 arch/x86/kernel/sys_x86_64.c:86 entry_SYSCALL_64_fastpath+0x23/0xc6 Memory state around the buggy address: ffff8801dac86f80: 00 00 fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8801dac87000: fb fb fb fc fc fb fb fb fc fc 00 00 00 fc fc fb >ffff8801dac87080: fb fb fc fc fb fb fb fc fc fc fc fc fc fc fc fc ^ ffff8801dac87100: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8801dac87180: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ================================================================== ================================================================== BUG: KASAN: use-after-free in do_get_mempolicy+0xb23/0xba0 mm/mempolicy.c:938 at addr ffff8801dac870b0 Read of size 8 by task syz-executor2/4283 CPU: 0 PID: 4283 Comm: syz-executor2 Tainted: G B 4.9.39-g5b07c2d #4 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 ffff8801ba157cf8 ffffffff81eacd59 ffff8801dac0ec80 ffff8801dac870a0 ffff8801dac870b8 ffffed003b590e16 ffff8801dac870b0 ffff8801ba157d20 ffffffff81546bfc ffffed003b590e16 ffff8801dac0ec80 0000000000000000 Call Trace: [] __dump_stack lib/dump_stack.c:15 [inline] [] dump_stack+0xc1/0x128 lib/dump_stack.c:51 [] kasan_object_err+0x1c/0x70 mm/kasan/report.c:160 [] print_address_description mm/kasan/report.c:198 [inline] [] kasan_report_error mm/kasan/report.c:287 [inline] [] kasan_report.part.1+0x20d/0x4e0 mm/kasan/report.c:309 [] kasan_report mm/kasan/report.c:330 [inline] [] __asan_report_load8_noabort+0x29/0x30 mm/kasan/report.c:330 [] do_get_mempolicy+0xb23/0xba0 mm/mempolicy.c:938 [] SYSC_get_mempolicy mm/mempolicy.c:1479 [inline] [] SyS_get_mempolicy+0xc3/0x190 mm/mempolicy.c:1468 [] entry_SYSCALL_64_fastpath+0x23/0xc6 Object at ffff8801dac870a0, in cache numa_policy size: 24 Allocated: PID = 4276 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:495 set_track mm/kasan/kasan.c:507 [inline] kasan_kmalloc+0xad/0xe0 mm/kasan/kasan.c:598 kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:537 slab_post_alloc_hook mm/slab.h:417 [inline] slab_alloc_node mm/slub.c:2715 [inline] slab_alloc mm/slub.c:2723 [inline] kmem_cache_alloc+0xc9/0x2a0 mm/slub.c:2728 __mpol_dup+0x79/0x3c0 mm/mempolicy.c:2104 mpol_dup include/linux/mempolicy.h:89 [inline] vma_replace_policy mm/mempolicy.c:703 [inline] mbind_range mm/mempolicy.c:776 [inline] do_mbind+0x71e/0xb30 mm/mempolicy.c:1240 SYSC_mbind mm/mempolicy.c:1349 [inline] SyS_mbind+0x13b/0x150 mm/mempolicy.c:1331 entry_SYSCALL_64_fastpath+0x23/0xc6 Freed: PID = 4262 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:495 set_track mm/kasan/kasan.c:507 [inline] kasan_slab_free+0x73/0xc0 mm/kasan/kasan.c:571 slab_free_hook mm/slub.c:1355 [inline] slab_free_freelist_hook mm/slub.c:1377 [inline] slab_free mm/slub.c:2958 [inline] kmem_cache_free+0xb2/0x2e0 mm/slub.c:2980 __mpol_put+0x26/0x30 mm/mempolicy.c:299 mpol_put include/linux/mempolicy.h:67 [inline] remove_vma+0x12b/0x1a0 mm/mmap.c:174 remove_vma_list mm/mmap.c:2482 [inline] do_munmap+0x7ff/0xeb0 mm/mmap.c:2705 mmap_region+0x14d/0xfe0 mm/mmap.c:1635 do_mmap+0x595/0xbe0 mm/mmap.c:1473 do_mmap_pgoff include/linux/mm.h:2014 [inline] vm_mmap_pgoff+0x158/0x1a0 mm/util.c:305 SYSC_mmap_pgoff mm/mmap.c:1523 [inline] SyS_mmap_pgoff+0x1fc/0x580 mm/mmap.c:1481 SYSC_mmap arch/x86/kernel/sys_x86_64.c:95 [inline] SyS_mmap+0x16/0x20 arch/x86/kernel/sys_x86_64.c:86 entry_SYSCALL_64_fastpath+0x23/0xc6 Memory state around the buggy address: ffff8801dac86f80: 00 00 fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8801dac87000: fb fb fb fc fc fb fb fb fc fc 00 00 00 fc fc fb >ffff8801dac87080: fb fb fc fc fb fb fb fc fc fc fc fc fc fc fc fc ^ ffff8801dac87100: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8801dac87180: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ================================================================== ================================================================== BUG: KASAN: use-after-free in mpol_needs_cond_ref include/linux/mempolicy.h:76 [inline] at addr ffff8801dac870a6 BUG: KASAN: use-after-free in mpol_cond_put include/linux/mempolicy.h:81 [inline] at addr ffff8801dac870a6 BUG: KASAN: use-after-free in do_get_mempolicy+0xaee/0xba0 mm/mempolicy.c:947 at addr ffff8801dac870a6 Read of size 2 by task syz-executor2/4283 CPU: 1 PID: 4283 Comm: syz-executor2 Tainted: G B 4.9.39-g5b07c2d #4 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 ffff8801ba157cf8 ffffffff81eacd59 ffff8801dac0ec80 ffff8801dac870a0 ffff8801dac870b8 ffffed003b590e14 ffff8801dac870a6 ffff8801ba157d20 ffffffff81546bfc ffffed003b590e14 ffff8801dac0ec80 0000000000000000 Call Trace: [] __dump_stack lib/dump_stack.c:15 [inline] [] dump_stack+0xc1/0x128 lib/dump_stack.c:51 [] kasan_object_err+0x1c/0x70 mm/kasan/report.c:160 [] print_address_description mm/kasan/report.c:198 [inline] [] kasan_report_error mm/kasan/report.c:287 [inline] [] kasan_report.part.1+0x20d/0x4e0 mm/kasan/report.c:309 [] kasan_report mm/kasan/report.c:328 [inline] [] __asan_report_load2_noabort+0x29/0x30 mm/kasan/report.c:328 [] mpol_needs_cond_ref include/linux/mempolicy.h:76 [inline] [] mpol_cond_put include/linux/mempolicy.h:81 [inline] [] do_get_mempolicy+0xaee/0xba0 mm/mempolicy.c:947 [] SYSC_get_mempolicy mm/mempolicy.c:1479 [inline] [] SyS_get_mempolicy+0xc3/0x190 mm/mempolicy.c:1468 [] entry_SYSCALL_64_fastpath+0x23/0xc6 Object at ffff8801dac870a0, in cache numa_policy size: 24 Allocated: PID = 4276 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:495 set_track mm/kasan/kasan.c:507 [inline] kasan_kmalloc+0xad/0xe0 mm/kasan/kasan.c:598 kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:537 slab_post_alloc_hook mm/slab.h:417 [inline] slab_alloc_node mm/slub.c:2715 [inline] slab_alloc mm/slub.c:2723 [inline] kmem_cache_alloc+0xc9/0x2a0 mm/slub.c:2728 __mpol_dup+0x79/0x3c0 mm/mempolicy.c:2104 mpol_dup include/linux/mempolicy.h:89 [inline] vma_replace_policy mm/mempolicy.c:703 [inline] mbind_range mm/mempolicy.c:776 [inline] do_mbind+0x71e/0xb30 mm/mempolicy.c:1240 SYSC_mbind mm/mempolicy.c:1349 [inline] SyS_mbind+0x13b/0x150 mm/mempolicy.c:1331 entry_SYSCALL_64_fastpath+0x23/0xc6 Freed: PID = 4262 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:495 set_track mm/kasan/kasan.c:507 [inline] kasan_slab_free+0x73/0xc0 mm/kasan/kasan.c:571 slab_free_hook mm/slub.c:1355 [inline] slab_free_freelist_hook mm/slub.c:1377 [inline] slab_free mm/slub.c:2958 [inline] kmem_cache_free+0xb2/0x2e0 mm/slub.c:2980 __mpol_put+0x26/0x30 mm/mempolicy.c:299 mpol_put include/linux/mempolicy.h:67 [inline] remove_vma+0x12b/0x1a0 mm/mmap.c:174 remove_vma_list mm/mmap.c:2482 [inline] do_munmap+0x7ff/0xeb0 mm/mmap.c:2705 mmap_region+0x14d/0xfe0 mm/mmap.c:1635 do_mmap+0x595/0xbe0 mm/mmap.c:1473 do_mmap_pgoff include/linux/mm.h:2014 [inline] vm_mmap_pgoff+0x158/0x1a0 mm/util.c:305 SYSC_mmap_pgoff mm/mmap.c:1523 [inline] SyS_mmap_pgoff+0x1fc/0x580 mm/mmap.c:1481 SYSC_mmap arch/x86/kernel/sys_x86_64.c:95 [inline] SyS_mmap+0x16/0x20 arch/x86/kernel/sys_x86_64.c:86 entry_SYSCALL_64_fastpath+0x23/0xc6 Memory state around the buggy address: ffff8801dac86f80: 00 00 fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8801dac87000: fb fb fb fc fc fb fb fb fc fc 00 00 00 fc fc fb >ffff8801dac87080: fb fb fc fc fb fb fb fc fc fc fc fc fc fc fc fc ^ ffff8801dac87100: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8801dac87180: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ================================================================== capability: warning: `syz-executor6' uses 32-bit capabilities (legacy support in use) syz-executor3 (4787) used greatest stack depth: 22952 bytes left kasan: CONFIG_KASAN_INLINE enabled kasan: GPF could be caused by NULL-ptr deref or user memory access general protection fault: 0000 [#1] PREEMPT SMP KASAN Dumping ftrace buffer: (ftrace buffer empty) Modules linked in: CPU: 0 PID: 4920 Comm: syz-executor3 Tainted: G B 4.9.39-g5b07c2d #4 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 task: ffff8801c6e45e00 task.stack: ffff8801b8708000 RIP: 0010:[] [] virt_to_head_page include/linux/mm.h:555 [inline] RIP: 0010:[] [] qlink_to_cache mm/kasan/quarantine.c:132 [inline] RIP: 0010:[] [] quarantine_reduce+0x101/0x1b0 mm/kasan/quarantine.c:226 RSP: 0018:ffff8801b870fb20 EFLAGS: 00010007 RAX: 03fe0be6ef563a00 RBX: 0000000000000000 RCX: 0000000006c07b18 RDX: ff8801bbd58e8800 RSI: 0000000080000000 RDI: ffffea0000000000 RBP: ffff8801b870fb50 R08: 000077ff80000000 R09: 0000000000000292 R10: 0000000009572450 R11: ffff8801cbc50000 R12: 000077ff80000000 R13: fffffffffffff7b0 R14: ffffffff814da4d4 R15: ffff8801dad533c0 FS: 00007fe9d2f7c700(0000) GS:ffff8801db200000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000002001d000 CR3: 00000001b84cb000 CR4: 00000000001406f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Stack: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 ffff8801b86c2e88 00000000024000c0 ffff8801b870fb90 ffffffff8154618a 00000000000000b8 0000000000000000 ffff8801dad533c0 00000000024000c0 Call Trace: [] kasan_kmalloc+0xca/0xe0 mm/kasan/kasan.c:583 [] kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:537 [] slab_post_alloc_hook mm/slab.h:417 [inline] [] slab_alloc_node mm/slub.c:2715 [inline] [] slab_alloc mm/slub.c:2723 [inline] [] kmem_cache_alloc+0xc9/0x2a0 mm/slub.c:2728 [] __split_vma.isra.37+0x174/0x7b0 mm/mmap.c:2554 [] do_munmap+0xbca/0xeb0 mm/mmap.c:2676 [] mmap_region+0x14d/0xfe0 mm/mmap.c:1635 [] do_mmap+0x595/0xbe0 mm/mmap.c:1473 [] do_mmap_pgoff include/linux/mm.h:2014 [inline] [] vm_mmap_pgoff+0x158/0x1a0 mm/util.c:305 [] SYSC_mmap_pgoff mm/mmap.c:1523 [inline] [] SyS_mmap_pgoff+0x1fc/0x580 mm/mmap.c:1481 [] SYSC_mmap arch/x86/kernel/sys_x86_64.c:95 [inline] [] SyS_mmap+0x16/0x20 arch/x86/kernel/sys_x86_64.c:86 [] entry_SYSCALL_64_fastpath+0x23/0xc6 Code: c1 e8 02 49 29 c5 49 39 cd 72 44 4c 89 e2 48 89 d0 48 01 f0 0f 82 b5 00 00 00 4d 89 c4 4c 01 e0 48 c1 e8 0c 48 c1 e0 06 48 01 f8 <4c> 8b 60 20 4d 8d 6c 24 ff 41 83 e4 01 4c 8b 22 49 0f 45 c5 48 RIP [] virt_to_head_page include/linux/mm.h:555 [inline] RIP [] qlink_to_cache mm/kasan/quarantine.c:132 [inline] RIP [] quarantine_reduce+0x101/0x1b0 mm/kasan/quarantine.c:226 RSP ---[ end trace e0450a60fc8ae463 ]---