Re: BUG: unable to handle kernel paging request in ion_heap_clear_pages

From: Dmitry Vyukov
Date: Sat Nov 30 2019 - 03:01:32 EST


On Sat, Nov 30, 2019 at 8:59 AM syzbot
<syzbot+be6ccf3081ce8afd1b56@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> Hello,
>
> syzbot found the following crash on:
>
> HEAD commit: 419593da Add linux-next specific files for 20191129
> git tree: linux-next
> console output: https://syzkaller.appspot.com/x/log.txt?x=12bfd882e00000
> kernel config: https://syzkaller.appspot.com/x/.config?x=7c04b0959e75c206
> dashboard link: https://syzkaller.appspot.com/bug?extid=be6ccf3081ce8afd1b56
> compiler: gcc (GCC) 9.0.0 20181231 (experimental)
>
> Unfortunately, I don't have any reproducer for this crash yet.
>
> IMPORTANT: if you fix the bug, please add the following tag to the commit:
> Reported-by: syzbot+be6ccf3081ce8afd1b56@xxxxxxxxxxxxxxxxxxxxxxxxx

+Daniel, kasan-dev
This is presumably from the new CONFIG_KASAN_VMALLOC and should be:
#syz fix: kasan: support vmalloc backing of vm_map_ram()


> BUG: unable to handle page fault for address: fffff52002e00000
> #PF: supervisor read access in kernel mode
> #PF: error_code(0x0000) - not-present page
> PGD 21ffee067 P4D 21ffee067 PUD aa11c067 PMD 0
> Oops: 0000 [#1] PREEMPT SMP KASAN
> CPU: 0 PID: 3644 Comm: ion_system_heap Not tainted
> 5.4.0-next-20191129-syzkaller #0
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
> Google 01/01/2011
> RIP: 0010:memory_is_nonzero mm/kasan/generic.c:121 [inline]
> RIP: 0010:memory_is_poisoned_n mm/kasan/generic.c:135 [inline]
> RIP: 0010:memory_is_poisoned mm/kasan/generic.c:166 [inline]
> RIP: 0010:check_memory_region_inline mm/kasan/generic.c:182 [inline]
> RIP: 0010:check_memory_region+0x9c/0x1a0 mm/kasan/generic.c:192
> Code: c9 4d 0f 49 c1 49 c1 f8 03 45 85 c0 0f 84 10 01 00 00 41 83 e8 01 4e
> 8d 44 c0 08 eb 0d 48 83 c0 08 4c 39 c0 0f 84 a7 00 00 00 <48> 83 38 00 74
> ed 4c 8d 40 08 eb 09 48 83 c0 01 49 39 c0 74 53 80
> RSP: 0018:ffffc9000c9f7ab8 EFLAGS: 00010212
> RAX: fffff52002e00000 RBX: fffff52002e01600 RCX: ffffffff85d5c229
> RDX: 0000000000000001 RSI: 000000000000b000 RDI: ffffc90017000000
> RBP: ffffc9000c9f7ad0 R08: fffff52002e01600 R09: 0000000000001600
> R10: fffff52002e015ff R11: ffffc9001700afff R12: fffff52002e00000
> R13: 000000000000b000 R14: 0000000000000000 R15: ffffc9000c9f7d08
> FS: 0000000000000000(0000) GS:ffff8880ae600000(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: fffff52002e00000 CR3: 00000000778bd000 CR4: 00000000001406f0
> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
> Call Trace:
> memset+0x24/0x40 mm/kasan/common.c:107
> memset include/linux/string.h:410 [inline]
> ion_heap_clear_pages+0x49/0x70 drivers/staging/android/ion/ion_heap.c:106
> ion_heap_sglist_zero+0x245/0x270 drivers/staging/android/ion/ion_heap.c:130
> ion_heap_buffer_zero+0xf5/0x150 drivers/staging/android/ion/ion_heap.c:145
> ion_system_heap_free+0x1eb/0x250
> drivers/staging/android/ion/ion_system_heap.c:163
> ion_buffer_destroy+0x159/0x2d0 drivers/staging/android/ion/ion.c:93
> ion_heap_deferred_free+0x29d/0x630
> drivers/staging/android/ion/ion_heap.c:239
> kthread+0x361/0x430 kernel/kthread.c:255
> ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:352
> Modules linked in:
> CR2: fffff52002e00000
> ---[ end trace ee5c63907f1d6f00 ]---
> RIP: 0010:memory_is_nonzero mm/kasan/generic.c:121 [inline]
> RIP: 0010:memory_is_poisoned_n mm/kasan/generic.c:135 [inline]
> RIP: 0010:memory_is_poisoned mm/kasan/generic.c:166 [inline]
> RIP: 0010:check_memory_region_inline mm/kasan/generic.c:182 [inline]
> RIP: 0010:check_memory_region+0x9c/0x1a0 mm/kasan/generic.c:192
> Code: c9 4d 0f 49 c1 49 c1 f8 03 45 85 c0 0f 84 10 01 00 00 41 83 e8 01 4e
> 8d 44 c0 08 eb 0d 48 83 c0 08 4c 39 c0 0f 84 a7 00 00 00 <48> 83 38 00 74
> ed 4c 8d 40 08 eb 09 48 83 c0 01 49 39 c0 74 53 80
> RSP: 0018:ffffc9000c9f7ab8 EFLAGS: 00010212
> RAX: fffff52002e00000 RBX: fffff52002e01600 RCX: ffffffff85d5c229
> RDX: 0000000000000001 RSI: 000000000000b000 RDI: ffffc90017000000
> RBP: ffffc9000c9f7ad0 R08: fffff52002e01600 R09: 0000000000001600
> R10: fffff52002e015ff R11: ffffc9001700afff R12: fffff52002e00000
> R13: 000000000000b000 R14: 0000000000000000 R15: ffffc9000c9f7d08
> FS: 0000000000000000(0000) GS:ffff8880ae600000(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: fffff52002e00000 CR3: 00000000778bd000 CR4: 00000000001406f0
> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
>
>
> ---
> 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.
>
> --
> 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/00000000000080f1d305988bb8ba%40google.com.