From c551a195ab9f048106bb50a33521eda7a6027280 Mon Sep 17 00:00:00 2001 From: Aleksandr Nogikh Date: Fri, 23 Jul 2021 16:16:47 +0000 Subject: pkg/report: decompile opcodes from reports Improve Linux reports quality by decompiling "Code: " descriptions. As that line of opcodes is not guaranteed to begin at the boundary of an instruction, try to find the right boundary. Handle the cases of multiple "Code: ..." lines by only decompiling the first one. In most cases the last such line shows user-space bytes, which is usually not of great importance. --- pkg/report/testdata/linux/decompile/amd64/0.in | 48 ++++++ pkg/report/testdata/linux/decompile/amd64/0.out | 66 +++++++++ pkg/report/testdata/linux/decompile/amd64/1.in | 20 +++ pkg/report/testdata/linux/decompile/amd64/1.out | 20 +++ pkg/report/testdata/linux/decompile/amd64/2.in | 164 +++++++++++++++++++++ pkg/report/testdata/linux/decompile/amd64/2.out | 185 ++++++++++++++++++++++++ pkg/report/testdata/linux/decompile/arm/0.in | 108 ++++++++++++++ pkg/report/testdata/linux/decompile/arm/0.out | 115 +++++++++++++++ pkg/report/testdata/linux/decompile/arm64/0.in | 42 ++++++ pkg/report/testdata/linux/decompile/arm64/0.out | 49 +++++++ pkg/report/testdata/linux/decompile/arm64/1.in | 49 +++++++ pkg/report/testdata/linux/decompile/arm64/1.out | 56 +++++++ 12 files changed, 922 insertions(+) create mode 100644 pkg/report/testdata/linux/decompile/amd64/0.in create mode 100644 pkg/report/testdata/linux/decompile/amd64/0.out create mode 100644 pkg/report/testdata/linux/decompile/amd64/1.in create mode 100644 pkg/report/testdata/linux/decompile/amd64/1.out create mode 100644 pkg/report/testdata/linux/decompile/amd64/2.in create mode 100644 pkg/report/testdata/linux/decompile/amd64/2.out create mode 100644 pkg/report/testdata/linux/decompile/arm/0.in create mode 100644 pkg/report/testdata/linux/decompile/arm/0.out create mode 100644 pkg/report/testdata/linux/decompile/arm64/0.in create mode 100644 pkg/report/testdata/linux/decompile/arm64/0.out create mode 100644 pkg/report/testdata/linux/decompile/arm64/1.in create mode 100644 pkg/report/testdata/linux/decompile/arm64/1.out (limited to 'pkg/report/testdata/linux') diff --git a/pkg/report/testdata/linux/decompile/amd64/0.in b/pkg/report/testdata/linux/decompile/amd64/0.in new file mode 100644 index 000000000..4006d9468 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/amd64/0.in @@ -0,0 +1,48 @@ +------------[ cut here ]------------ +WARNING: CPU: 0 PID: 2468 at block/genhd.c:523 __device_add_disk+0xb76/0xd10 block/genhd.c:523 +Modules linked in: +CPU: 0 PID: 2468 Comm: syz-executor.5 Tainted: G W 5.14.0-rc1-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +RIP: 0010:__device_add_disk+0xb76/0xd10 block/genhd.c:523 +Code: fb ff ff 4c 89 ef 89 44 24 28 e8 75 c8 f6 fd 8b 44 24 28 e9 7a fb ff ff 4c 89 ef e8 f4 c7 f6 fd e9 e0 fb ff ff e8 4a a8 b0 fd <0f> 0b e9 97 fb ff ff 4c 89 ff e8 0b c8 f6 fd e9 b1 f6 ff ff 48 8b +RSP: 0018:ffffc90018587a30 EFLAGS: 00010246 +RAX: 0000000000040000 RBX: ffff8880863cac00 RCX: ffffc90014873000 +RDX: 0000000000040000 RSI: ffffffff83c4df76 RDI: 0000000000000003 +RBP: ffff888027440400 R08: 0000000000000000 R09: ffffffff8bac1273 +R10: ffffffff83c4db08 R11: 0000000000000000 R12: 0000000000000001 +R13: ffff8880863cb09c R14: ffff8880274404a0 R15: 0000000000000000 +FS: 00007f66b7003700(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000 +CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 +CR2: 0000000000544038 CR3: 000000003f471000 CR4: 00000000001526f0 +DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 +DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 +Call Trace: + add_disk include/linux/genhd.h:217 [inline] + md_alloc+0xa32/0x1190 drivers/md/md.c:5707 + md_probe+0x69/0x70 drivers/md/md.c:5738 + blk_request_module+0x111/0x1d0 block/genhd.c:660 + blkdev_get_no_open+0x1d5/0x250 fs/block_dev.c:1332 + blkdev_get_by_dev.part.0+0x25/0xdd0 fs/block_dev.c:1395 + blkdev_get_by_dev+0x6b/0x80 fs/block_dev.c:1448 + swsusp_check+0x4d/0x270 kernel/power/swap.c:1525 + software_resume.part.0+0x102/0x1f0 kernel/power/hibernate.c:977 + software_resume kernel/power/hibernate.c:86 [inline] + resume_store+0x161/0x190 kernel/power/hibernate.c:1179 + kobj_attr_store+0x50/0x80 lib/kobject.c:856 + sysfs_kf_write+0x110/0x160 fs/sysfs/file.c:139 + kernfs_fop_write_iter+0x342/0x500 fs/kernfs/file.c:296 + call_write_iter include/linux/fs.h:2114 [inline] + new_sync_write+0x426/0x650 fs/read_write.c:518 + vfs_write+0x75a/0xa40 fs/read_write.c:605 + ksys_write+0x12d/0x250 fs/read_write.c:658 + do_syscall_x64 arch/x86/entry/common.c:50 [inline] + do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 + entry_SYSCALL_64_after_hwframe+0x44/0xae +RIP: 0033:0x4665d9 +Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48 +RSP: 002b:00007f66b7003188 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 +RAX: ffffffffffffffda RBX: 000000000056bf80 RCX: 00000000004665d9 +RDX: 0000000000000012 RSI: 0000000020000140 RDI: 0000000000000003 +RBP: 00007f66b70031d0 R08: 0000000000000000 R09: 0000000000000000 +R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000002 +R13: 0000000000a9fb1f R14: 00007f66b7003300 R15: 0000000000022000 diff --git a/pkg/report/testdata/linux/decompile/amd64/0.out b/pkg/report/testdata/linux/decompile/amd64/0.out new file mode 100644 index 000000000..1d50e885d --- /dev/null +++ b/pkg/report/testdata/linux/decompile/amd64/0.out @@ -0,0 +1,66 @@ +------------[ cut here ]------------ +WARNING: CPU: 0 PID: 2468 at block/genhd.c:523 __device_add_disk+0xb76/0xd10 block/genhd.c:523 +Modules linked in: +CPU: 0 PID: 2468 Comm: syz-executor.5 Tainted: G W 5.14.0-rc1-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +RIP: 0010:__device_add_disk+0xb76/0xd10 block/genhd.c:523 +Code: fb ff ff 4c 89 ef 89 44 24 28 e8 75 c8 f6 fd 8b 44 24 28 e9 7a fb ff ff 4c 89 ef e8 f4 c7 f6 fd e9 e0 fb ff ff e8 4a a8 b0 fd <0f> 0b e9 97 fb ff ff 4c 89 ff e8 0b c8 f6 fd e9 b1 f6 ff ff 48 8b +RSP: 0018:ffffc90018587a30 EFLAGS: 00010246 +RAX: 0000000000040000 RBX: ffff8880863cac00 RCX: ffffc90014873000 +RDX: 0000000000040000 RSI: ffffffff83c4df76 RDI: 0000000000000003 +RBP: ffff888027440400 R08: 0000000000000000 R09: ffffffff8bac1273 +R10: ffffffff83c4db08 R11: 0000000000000000 R12: 0000000000000001 +R13: ffff8880863cb09c R14: ffff8880274404a0 R15: 0000000000000000 +FS: 00007f66b7003700(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000 +CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 +CR2: 0000000000544038 CR3: 000000003f471000 CR4: 00000000001526f0 +DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 +DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 +Call Trace: + add_disk include/linux/genhd.h:217 [inline] + md_alloc+0xa32/0x1190 drivers/md/md.c:5707 + md_probe+0x69/0x70 drivers/md/md.c:5738 + blk_request_module+0x111/0x1d0 block/genhd.c:660 + blkdev_get_no_open+0x1d5/0x250 fs/block_dev.c:1332 + blkdev_get_by_dev.part.0+0x25/0xdd0 fs/block_dev.c:1395 + blkdev_get_by_dev+0x6b/0x80 fs/block_dev.c:1448 + swsusp_check+0x4d/0x270 kernel/power/swap.c:1525 + software_resume.part.0+0x102/0x1f0 kernel/power/hibernate.c:977 + software_resume kernel/power/hibernate.c:86 [inline] + resume_store+0x161/0x190 kernel/power/hibernate.c:1179 + kobj_attr_store+0x50/0x80 lib/kobject.c:856 + sysfs_kf_write+0x110/0x160 fs/sysfs/file.c:139 + kernfs_fop_write_iter+0x342/0x500 fs/kernfs/file.c:296 + call_write_iter include/linux/fs.h:2114 [inline] + new_sync_write+0x426/0x650 fs/read_write.c:518 + vfs_write+0x75a/0xa40 fs/read_write.c:605 + ksys_write+0x12d/0x250 fs/read_write.c:658 + do_syscall_x64 arch/x86/entry/common.c:50 [inline] + do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 + entry_SYSCALL_64_after_hwframe+0x44/0xae +RIP: 0033:0x4665d9 +Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48 +RSP: 002b:00007f66b7003188 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 +RAX: ffffffffffffffda RBX: 000000000056bf80 RCX: 00000000004665d9 +RDX: 0000000000000012 RSI: 0000000020000140 RDI: 0000000000000003 +RBP: 00007f66b70031d0 R08: 0000000000000000 R09: 0000000000000000 +R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000002 +R13: 0000000000a9fb1f R14: 00007f66b7003300 R15: 0000000000022000 +---------------- +Code disassembly (best guess), 2 bytes skipped: + 0: ff 4c 89 ef decl -0x11(%rcx,%rcx,4) + 4: 89 44 24 28 mov %eax,0x28(%rsp) + 8: e8 75 c8 f6 fd callq 0xfdf6c882 + d: 8b 44 24 28 mov 0x28(%rsp),%eax + 11: e9 7a fb ff ff jmpq 0xfffffb90 + 16: 4c 89 ef mov %r13,%rdi + 19: e8 f4 c7 f6 fd callq 0xfdf6c812 + 1e: e9 e0 fb ff ff jmpq 0xfffffc03 + 23: e8 4a a8 b0 fd callq 0xfdb0a872 + 28: 0f 0b ud2 <-- trapping instruction + 2a: e9 97 fb ff ff jmpq 0xfffffbc6 + 2f: 4c 89 ff mov %r15,%rdi + 32: e8 0b c8 f6 fd callq 0xfdf6c842 + 37: e9 b1 f6 ff ff jmpq 0xfffff6ed + 3c: 48 rex.W + 3d: 8b .byte 0x8b diff --git a/pkg/report/testdata/linux/decompile/amd64/1.in b/pkg/report/testdata/linux/decompile/amd64/1.in new file mode 100644 index 000000000..b1631d1e0 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/amd64/1.in @@ -0,0 +1,20 @@ +BUG: kernel NULL pointer dereference, address: 0000000000000000 +#PF: supervisor instruction fetch in kernel mode +#PF: error_code(0x0010) - not-present page +PGD 2cdec067 P4D 2cdec067 PUD 2937a067 PMD 0 +Oops: 0010 [#1] PREEMPT SMP KASAN +CPU: 0 PID: 15551 Comm: syz-executor.1 Not tainted 5.13.0-rc4-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +RIP: 0010:0x0 +Code: Unable to access opcode bytes at RIP 0xffffffffffffffd6. +RSP: 0018:ffffc90001bcf630 EFLAGS: 00010292 +RAX: 0000000000000000 RBX: ffff88801f456000 RCX: 000000000000004e +RDX: ffff88801dc61224 RSI: ffff88801f456000 RDI: ffff888011879000 +RBP: 1ffff11003b8c244 R08: 000000000000001d R09: 0000000000000002 +R10: 0000000000000002 R11: ffff888037fb9c40 R12: ffff88801dc61224 +R13: dffffc0000000000 R14: 000000000000001d R15: ffff888011879000 +FS: 00007f7816197700(0000) GS:ffff8880b9a00000(0000) knlGS:0000000000000000 +CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 +CR2: ffffffffffffffd6 CR3: 0000000022965000 CR4: 00000000001506f0 +DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 +DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 \ No newline at end of file diff --git a/pkg/report/testdata/linux/decompile/amd64/1.out b/pkg/report/testdata/linux/decompile/amd64/1.out new file mode 100644 index 000000000..b1631d1e0 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/amd64/1.out @@ -0,0 +1,20 @@ +BUG: kernel NULL pointer dereference, address: 0000000000000000 +#PF: supervisor instruction fetch in kernel mode +#PF: error_code(0x0010) - not-present page +PGD 2cdec067 P4D 2cdec067 PUD 2937a067 PMD 0 +Oops: 0010 [#1] PREEMPT SMP KASAN +CPU: 0 PID: 15551 Comm: syz-executor.1 Not tainted 5.13.0-rc4-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +RIP: 0010:0x0 +Code: Unable to access opcode bytes at RIP 0xffffffffffffffd6. +RSP: 0018:ffffc90001bcf630 EFLAGS: 00010292 +RAX: 0000000000000000 RBX: ffff88801f456000 RCX: 000000000000004e +RDX: ffff88801dc61224 RSI: ffff88801f456000 RDI: ffff888011879000 +RBP: 1ffff11003b8c244 R08: 000000000000001d R09: 0000000000000002 +R10: 0000000000000002 R11: ffff888037fb9c40 R12: ffff88801dc61224 +R13: dffffc0000000000 R14: 000000000000001d R15: ffff888011879000 +FS: 00007f7816197700(0000) GS:ffff8880b9a00000(0000) knlGS:0000000000000000 +CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 +CR2: ffffffffffffffd6 CR3: 0000000022965000 CR4: 00000000001506f0 +DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 +DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 \ No newline at end of file diff --git a/pkg/report/testdata/linux/decompile/amd64/2.in b/pkg/report/testdata/linux/decompile/amd64/2.in new file mode 100644 index 000000000..7559caf25 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/amd64/2.in @@ -0,0 +1,164 @@ +rcu: INFO: rcu_preempt self-detected stall on CPU +rcu: 0-...!: (2 ticks this GP) idle=4de/1/0x4000000000000000 softirq=11238/11238 fqs=0 + (t=13326 jiffies g=13217 q=742) +rcu: rcu_preempt kthread timer wakeup didn't happen for 13325 jiffies! g13217 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 +rcu: Possible timer handling issue on cpu=0 timer-softirq=29073 +rcu: rcu_preempt kthread starved for 13326 jiffies! g13217 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->cpu=0 +rcu: Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior. +rcu: RCU grace-period kthread stack dump: +task:rcu_preempt state:I stack:29096 pid: 14 ppid: 2 flags:0x00004000 +Call Trace: + context_switch kernel/sched/core.c:4683 [inline] + __schedule+0x93a/0x26f0 kernel/sched/core.c:5940 + schedule+0xd3/0x270 kernel/sched/core.c:6019 + schedule_timeout+0x14a/0x2a0 kernel/time/timer.c:1878 + rcu_gp_fqs_loop kernel/rcu/tree.c:1996 [inline] + rcu_gp_kthread+0xd34/0x1980 kernel/rcu/tree.c:2169 + kthread+0x3e5/0x4d0 kernel/kthread.c:319 + ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 +rcu: Stack dump where RCU GP kthread last ran: +NMI backtrace for cpu 0 +CPU: 0 PID: 10 Comm: kworker/u4:1 Not tainted 5.14.0-rc2-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +Workqueue: bat_events batadv_tt_purge +Call Trace: + + __dump_stack lib/dump_stack.c:88 [inline] + dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:105 + nmi_cpu_backtrace.cold+0x44/0xd7 lib/nmi_backtrace.c:105 + nmi_trigger_cpumask_backtrace+0x1b3/0x230 lib/nmi_backtrace.c:62 + trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline] + rcu_check_gp_kthread_starvation.cold+0x1d1/0x1d6 kernel/rcu/tree_stall.h:479 + print_cpu_stall kernel/rcu/tree_stall.h:623 [inline] + check_cpu_stall kernel/rcu/tree_stall.h:700 [inline] + rcu_pending kernel/rcu/tree.c:3922 [inline] + rcu_sched_clock_irq.cold+0x9a/0x747 kernel/rcu/tree.c:2641 + update_process_times+0x16d/0x200 kernel/time/timer.c:1782 + tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:226 + tick_sched_timer+0x1b0/0x2d0 kernel/time/tick-sched.c:1421 + __run_hrtimer kernel/time/hrtimer.c:1537 [inline] + __hrtimer_run_queues+0x1c0/0xe50 kernel/time/hrtimer.c:1601 + hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663 + local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline] + __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106 + sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1100 + + asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 +RIP: 0010:__local_bh_enable_ip+0xa8/0x120 kernel/softirq.c:390 +Code: 1d ad 91 bc 7e 65 8b 05 a6 91 bc 7e a9 00 ff ff 00 74 45 bf 01 00 00 00 e8 15 2a 09 00 e8 50 84 35 00 fb 65 8b 05 88 91 bc 7e <85> c0 74 58 5b 5d c3 65 8b 05 d6 98 bc 7e 85 c0 75 a2 0f 0b eb 9e +RSP: 0018:ffffc90000f0fc10 EFLAGS: 00000206 +RAX: 0000000080000000 RBX: 00000000fffffe00 RCX: 1ffffffff1fa584a +RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 +RBP: ffffffff88ca93e5 R08: 0000000000000001 R09: ffffffff8fcd7987 +R10: 0000000000000001 R11: 0000000000000000 R12: ffffc90000f0fdb0 +R13: ffff888042de12f8 R14: 0000000000000082 R15: dffffc0000000000 + spin_unlock_bh include/linux/spinlock.h:399 [inline] + batadv_tt_local_purge+0x285/0x370 net/batman-adv/translation-table.c:1369 + batadv_tt_purge+0x2c/0xaf0 net/batman-adv/translation-table.c:3591 + process_one_work+0x98d/0x1630 kernel/workqueue.c:2276 + worker_thread+0x658/0x11f0 kernel/workqueue.c:2422 + kthread+0x3e5/0x4d0 kernel/kthread.c:319 + ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 +NMI backtrace for cpu 0 +CPU: 0 PID: 10 Comm: kworker/u4:1 Not tainted 5.14.0-rc2-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +Workqueue: bat_events batadv_tt_purge +Call Trace: + + __dump_stack lib/dump_stack.c:88 [inline] + dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:105 + nmi_cpu_backtrace.cold+0x44/0xd7 lib/nmi_backtrace.c:105 + nmi_trigger_cpumask_backtrace+0x1b3/0x230 lib/nmi_backtrace.c:62 + trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline] + rcu_dump_cpu_stacks+0x25e/0x3f0 kernel/rcu/tree_stall.h:342 + print_cpu_stall kernel/rcu/tree_stall.h:625 [inline] + check_cpu_stall kernel/rcu/tree_stall.h:700 [inline] + rcu_pending kernel/rcu/tree.c:3922 [inline] + rcu_sched_clock_irq.cold+0x9f/0x747 kernel/rcu/tree.c:2641 + update_process_times+0x16d/0x200 kernel/time/timer.c:1782 + tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:226 + tick_sched_timer+0x1b0/0x2d0 kernel/time/tick-sched.c:1421 + __run_hrtimer kernel/time/hrtimer.c:1537 [inline] + __hrtimer_run_queues+0x1c0/0xe50 kernel/time/hrtimer.c:1601 + hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663 + local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline] + __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106 + sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1100 + + asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 +RIP: 0010:__local_bh_enable_ip+0xa8/0x120 kernel/softirq.c:390 +Code: 1d ad 91 bc 7e 65 8b 05 a6 91 bc 7e a9 00 ff ff 00 74 45 bf 01 00 00 00 e8 15 2a 09 00 e8 50 84 35 00 fb 65 8b 05 88 91 bc 7e <85> c0 74 58 5b 5d c3 65 8b 05 d6 98 bc 7e 85 c0 75 a2 0f 0b eb 9e +RSP: 0018:ffffc90000f0fc10 EFLAGS: 00000206 +RAX: 0000000080000000 RBX: 00000000fffffe00 RCX: 1ffffffff1fa584a +RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 +RBP: ffffffff88ca93e5 R08: 0000000000000001 R09: ffffffff8fcd7987 +R10: 0000000000000001 R11: 0000000000000000 R12: ffffc90000f0fdb0 +R13: ffff888042de12f8 R14: 0000000000000082 R15: dffffc0000000000 + spin_unlock_bh include/linux/spinlock.h:399 [inline] + batadv_tt_local_purge+0x285/0x370 net/batman-adv/translation-table.c:1369 + batadv_tt_purge+0x2c/0xaf0 net/batman-adv/translation-table.c:3591 + process_one_work+0x98d/0x1630 kernel/workqueue.c:2276 + worker_thread+0x658/0x11f0 kernel/workqueue.c:2422 + kthread+0x3e5/0x4d0 kernel/kthread.c:319 + ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 +Sending NMI from CPU 0 to CPUs 1: +NMI backtrace for cpu 1 +CPU: 1 PID: 9018 Comm: kworker/u4:2 Not tainted 5.14.0-rc2-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +Workqueue: events_unbound toggle_allocation_gate +RIP: 0010:__sanitizer_cov_trace_const_cmp4+0xc/0x70 kernel/kcov.c:283 +Code: 00 00 00 48 89 7c 30 e8 48 89 4c 30 f0 4c 89 54 d8 20 48 89 10 5b c3 0f 1f 80 00 00 00 00 41 89 f8 bf 03 00 00 00 4c 8b 14 24 <89> f1 65 48 8b 34 25 00 f0 01 00 e8 e4 ee ff ff 84 c0 74 4b 48 8b +RSP: 0018:ffffc90000fd8df8 EFLAGS: 00000046 +RAX: 0000000000010002 RBX: ffff8880b9d424c0 RCX: 0000000000000000 +RDX: ffff88802e756280 RSI: 0000000000000001 RDI: 0000000000000003 +RBP: ffff88802539bb40 R08: 0000000000000007 R09: ffffffff904c64ab +R10: ffffffff816467fb R11: 0000000000000000 R12: 0000000000000001 +R13: 0000000000000000 R14: ffff8880b9d423c0 R15: 0000000000000001 +FS: 0000000000000000(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 +CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 +CR2: 0000000020000600 CR3: 000000000b68e000 CR4: 00000000001506e0 +DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 +DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 +Call Trace: + + cpu_max_bits_warn include/linux/cpumask.h:108 [inline] + cpumask_check include/linux/cpumask.h:115 [inline] + cpumask_test_cpu include/linux/cpumask.h:344 [inline] + cpu_online include/linux/cpumask.h:895 [inline] + trace_hrtimer_start include/trace/events/timer.h:195 [inline] + debug_activate kernel/time/hrtimer.c:476 [inline] + enqueue_hrtimer+0x4b/0x3e0 kernel/time/hrtimer.c:982 + __run_hrtimer kernel/time/hrtimer.c:1554 [inline] + __hrtimer_run_queues+0xb02/0xe50 kernel/time/hrtimer.c:1601 + hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663 + local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline] + __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106 + sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1100 + + asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 +RIP: 0010:csd_lock_wait kernel/smp.c:440 [inline] +RIP: 0010:smp_call_function_many_cond+0x452/0xc20 kernel/smp.c:967 +Code: 0b 00 85 ed 74 4d 48 b8 00 00 00 00 00 fc ff df 4d 89 f4 4c 89 f5 49 c1 ec 03 83 e5 07 49 01 c4 83 c5 03 e8 c0 48 0b 00 f3 90 <41> 0f b6 04 24 40 38 c5 7c 08 84 c0 0f 85 33 06 00 00 8b 43 08 31 +RSP: 0018:ffffc900037b7a00 EFLAGS: 00000293 +RAX: 0000000000000000 RBX: ffff8880b9c55de0 RCX: 0000000000000000 +RDX: ffff88802e756280 RSI: ffffffff816975f0 RDI: 0000000000000003 +RBP: 0000000000000003 R08: 0000000000000000 R09: 0000000000000001 +R10: ffffffff81697616 R11: 0000000000000000 R12: ffffed101738abbd +R13: 0000000000000000 R14: ffff8880b9c55de8 R15: 0000000000000001 + on_each_cpu_cond_mask+0x56/0xa0 kernel/smp.c:1133 + on_each_cpu include/linux/smp.h:71 [inline] + text_poke_sync arch/x86/kernel/alternative.c:929 [inline] + text_poke_bp_batch+0x1b3/0x560 arch/x86/kernel/alternative.c:1114 + text_poke_flush arch/x86/kernel/alternative.c:1268 [inline] + text_poke_flush arch/x86/kernel/alternative.c:1265 [inline] + text_poke_finish+0x16/0x30 arch/x86/kernel/alternative.c:1275 + arch_jump_label_transform_apply+0x13/0x20 arch/x86/kernel/jump_label.c:145 + jump_label_update+0x1d5/0x430 kernel/jump_label.c:830 + static_key_disable_cpuslocked+0x152/0x1b0 kernel/jump_label.c:207 + static_key_disable+0x16/0x20 kernel/jump_label.c:215 + toggle_allocation_gate mm/kfence/core.c:637 [inline] + toggle_allocation_gate+0x185/0x390 mm/kfence/core.c:615 + process_one_work+0x98d/0x1630 kernel/workqueue.c:2276 + worker_thread+0x658/0x11f0 kernel/workqueue.c:2422 + kthread+0x3e5/0x4d0 kernel/kthread.c:319 + ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 diff --git a/pkg/report/testdata/linux/decompile/amd64/2.out b/pkg/report/testdata/linux/decompile/amd64/2.out new file mode 100644 index 000000000..87de89e9e --- /dev/null +++ b/pkg/report/testdata/linux/decompile/amd64/2.out @@ -0,0 +1,185 @@ +rcu: INFO: rcu_preempt self-detected stall on CPU +rcu: 0-...!: (2 ticks this GP) idle=4de/1/0x4000000000000000 softirq=11238/11238 fqs=0 + (t=13326 jiffies g=13217 q=742) +rcu: rcu_preempt kthread timer wakeup didn't happen for 13325 jiffies! g13217 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 +rcu: Possible timer handling issue on cpu=0 timer-softirq=29073 +rcu: rcu_preempt kthread starved for 13326 jiffies! g13217 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->cpu=0 +rcu: Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior. +rcu: RCU grace-period kthread stack dump: +task:rcu_preempt state:I stack:29096 pid: 14 ppid: 2 flags:0x00004000 +Call Trace: + context_switch kernel/sched/core.c:4683 [inline] + __schedule+0x93a/0x26f0 kernel/sched/core.c:5940 + schedule+0xd3/0x270 kernel/sched/core.c:6019 + schedule_timeout+0x14a/0x2a0 kernel/time/timer.c:1878 + rcu_gp_fqs_loop kernel/rcu/tree.c:1996 [inline] + rcu_gp_kthread+0xd34/0x1980 kernel/rcu/tree.c:2169 + kthread+0x3e5/0x4d0 kernel/kthread.c:319 + ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 +rcu: Stack dump where RCU GP kthread last ran: +NMI backtrace for cpu 0 +CPU: 0 PID: 10 Comm: kworker/u4:1 Not tainted 5.14.0-rc2-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +Workqueue: bat_events batadv_tt_purge +Call Trace: + + __dump_stack lib/dump_stack.c:88 [inline] + dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:105 + nmi_cpu_backtrace.cold+0x44/0xd7 lib/nmi_backtrace.c:105 + nmi_trigger_cpumask_backtrace+0x1b3/0x230 lib/nmi_backtrace.c:62 + trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline] + rcu_check_gp_kthread_starvation.cold+0x1d1/0x1d6 kernel/rcu/tree_stall.h:479 + print_cpu_stall kernel/rcu/tree_stall.h:623 [inline] + check_cpu_stall kernel/rcu/tree_stall.h:700 [inline] + rcu_pending kernel/rcu/tree.c:3922 [inline] + rcu_sched_clock_irq.cold+0x9a/0x747 kernel/rcu/tree.c:2641 + update_process_times+0x16d/0x200 kernel/time/timer.c:1782 + tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:226 + tick_sched_timer+0x1b0/0x2d0 kernel/time/tick-sched.c:1421 + __run_hrtimer kernel/time/hrtimer.c:1537 [inline] + __hrtimer_run_queues+0x1c0/0xe50 kernel/time/hrtimer.c:1601 + hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663 + local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline] + __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106 + sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1100 + + asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 +RIP: 0010:__local_bh_enable_ip+0xa8/0x120 kernel/softirq.c:390 +Code: 1d ad 91 bc 7e 65 8b 05 a6 91 bc 7e a9 00 ff ff 00 74 45 bf 01 00 00 00 e8 15 2a 09 00 e8 50 84 35 00 fb 65 8b 05 88 91 bc 7e <85> c0 74 58 5b 5d c3 65 8b 05 d6 98 bc 7e 85 c0 75 a2 0f 0b eb 9e +RSP: 0018:ffffc90000f0fc10 EFLAGS: 00000206 +RAX: 0000000080000000 RBX: 00000000fffffe00 RCX: 1ffffffff1fa584a +RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 +RBP: ffffffff88ca93e5 R08: 0000000000000001 R09: ffffffff8fcd7987 +R10: 0000000000000001 R11: 0000000000000000 R12: ffffc90000f0fdb0 +R13: ffff888042de12f8 R14: 0000000000000082 R15: dffffc0000000000 + spin_unlock_bh include/linux/spinlock.h:399 [inline] + batadv_tt_local_purge+0x285/0x370 net/batman-adv/translation-table.c:1369 + batadv_tt_purge+0x2c/0xaf0 net/batman-adv/translation-table.c:3591 + process_one_work+0x98d/0x1630 kernel/workqueue.c:2276 + worker_thread+0x658/0x11f0 kernel/workqueue.c:2422 + kthread+0x3e5/0x4d0 kernel/kthread.c:319 + ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 +NMI backtrace for cpu 0 +CPU: 0 PID: 10 Comm: kworker/u4:1 Not tainted 5.14.0-rc2-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +Workqueue: bat_events batadv_tt_purge +Call Trace: + + __dump_stack lib/dump_stack.c:88 [inline] + dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:105 + nmi_cpu_backtrace.cold+0x44/0xd7 lib/nmi_backtrace.c:105 + nmi_trigger_cpumask_backtrace+0x1b3/0x230 lib/nmi_backtrace.c:62 + trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline] + rcu_dump_cpu_stacks+0x25e/0x3f0 kernel/rcu/tree_stall.h:342 + print_cpu_stall kernel/rcu/tree_stall.h:625 [inline] + check_cpu_stall kernel/rcu/tree_stall.h:700 [inline] + rcu_pending kernel/rcu/tree.c:3922 [inline] + rcu_sched_clock_irq.cold+0x9f/0x747 kernel/rcu/tree.c:2641 + update_process_times+0x16d/0x200 kernel/time/timer.c:1782 + tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:226 + tick_sched_timer+0x1b0/0x2d0 kernel/time/tick-sched.c:1421 + __run_hrtimer kernel/time/hrtimer.c:1537 [inline] + __hrtimer_run_queues+0x1c0/0xe50 kernel/time/hrtimer.c:1601 + hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663 + local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline] + __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106 + sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1100 + + asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 +RIP: 0010:__local_bh_enable_ip+0xa8/0x120 kernel/softirq.c:390 +Code: 1d ad 91 bc 7e 65 8b 05 a6 91 bc 7e a9 00 ff ff 00 74 45 bf 01 00 00 00 e8 15 2a 09 00 e8 50 84 35 00 fb 65 8b 05 88 91 bc 7e <85> c0 74 58 5b 5d c3 65 8b 05 d6 98 bc 7e 85 c0 75 a2 0f 0b eb 9e +RSP: 0018:ffffc90000f0fc10 EFLAGS: 00000206 +RAX: 0000000080000000 RBX: 00000000fffffe00 RCX: 1ffffffff1fa584a +RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 +RBP: ffffffff88ca93e5 R08: 0000000000000001 R09: ffffffff8fcd7987 +R10: 0000000000000001 R11: 0000000000000000 R12: ffffc90000f0fdb0 +R13: ffff888042de12f8 R14: 0000000000000082 R15: dffffc0000000000 + spin_unlock_bh include/linux/spinlock.h:399 [inline] + batadv_tt_local_purge+0x285/0x370 net/batman-adv/translation-table.c:1369 + batadv_tt_purge+0x2c/0xaf0 net/batman-adv/translation-table.c:3591 + process_one_work+0x98d/0x1630 kernel/workqueue.c:2276 + worker_thread+0x658/0x11f0 kernel/workqueue.c:2422 + kthread+0x3e5/0x4d0 kernel/kthread.c:319 + ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 +Sending NMI from CPU 0 to CPUs 1: +NMI backtrace for cpu 1 +CPU: 1 PID: 9018 Comm: kworker/u4:2 Not tainted 5.14.0-rc2-syzkaller #0 +Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +Workqueue: events_unbound toggle_allocation_gate +RIP: 0010:__sanitizer_cov_trace_const_cmp4+0xc/0x70 kernel/kcov.c:283 +Code: 00 00 00 48 89 7c 30 e8 48 89 4c 30 f0 4c 89 54 d8 20 48 89 10 5b c3 0f 1f 80 00 00 00 00 41 89 f8 bf 03 00 00 00 4c 8b 14 24 <89> f1 65 48 8b 34 25 00 f0 01 00 e8 e4 ee ff ff 84 c0 74 4b 48 8b +RSP: 0018:ffffc90000fd8df8 EFLAGS: 00000046 +RAX: 0000000000010002 RBX: ffff8880b9d424c0 RCX: 0000000000000000 +RDX: ffff88802e756280 RSI: 0000000000000001 RDI: 0000000000000003 +RBP: ffff88802539bb40 R08: 0000000000000007 R09: ffffffff904c64ab +R10: ffffffff816467fb R11: 0000000000000000 R12: 0000000000000001 +R13: 0000000000000000 R14: ffff8880b9d423c0 R15: 0000000000000001 +FS: 0000000000000000(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 +CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 +CR2: 0000000020000600 CR3: 000000000b68e000 CR4: 00000000001506e0 +DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 +DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 +Call Trace: + + cpu_max_bits_warn include/linux/cpumask.h:108 [inline] + cpumask_check include/linux/cpumask.h:115 [inline] + cpumask_test_cpu include/linux/cpumask.h:344 [inline] + cpu_online include/linux/cpumask.h:895 [inline] + trace_hrtimer_start include/trace/events/timer.h:195 [inline] + debug_activate kernel/time/hrtimer.c:476 [inline] + enqueue_hrtimer+0x4b/0x3e0 kernel/time/hrtimer.c:982 + __run_hrtimer kernel/time/hrtimer.c:1554 [inline] + __hrtimer_run_queues+0xb02/0xe50 kernel/time/hrtimer.c:1601 + hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663 + local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline] + __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106 + sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1100 + + asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 +RIP: 0010:csd_lock_wait kernel/smp.c:440 [inline] +RIP: 0010:smp_call_function_many_cond+0x452/0xc20 kernel/smp.c:967 +Code: 0b 00 85 ed 74 4d 48 b8 00 00 00 00 00 fc ff df 4d 89 f4 4c 89 f5 49 c1 ec 03 83 e5 07 49 01 c4 83 c5 03 e8 c0 48 0b 00 f3 90 <41> 0f b6 04 24 40 38 c5 7c 08 84 c0 0f 85 33 06 00 00 8b 43 08 31 +RSP: 0018:ffffc900037b7a00 EFLAGS: 00000293 +RAX: 0000000000000000 RBX: ffff8880b9c55de0 RCX: 0000000000000000 +RDX: ffff88802e756280 RSI: ffffffff816975f0 RDI: 0000000000000003 +RBP: 0000000000000003 R08: 0000000000000000 R09: 0000000000000001 +R10: ffffffff81697616 R11: 0000000000000000 R12: ffffed101738abbd +R13: 0000000000000000 R14: ffff8880b9c55de8 R15: 0000000000000001 + on_each_cpu_cond_mask+0x56/0xa0 kernel/smp.c:1133 + on_each_cpu include/linux/smp.h:71 [inline] + text_poke_sync arch/x86/kernel/alternative.c:929 [inline] + text_poke_bp_batch+0x1b3/0x560 arch/x86/kernel/alternative.c:1114 + text_poke_flush arch/x86/kernel/alternative.c:1268 [inline] + text_poke_flush arch/x86/kernel/alternative.c:1265 [inline] + text_poke_finish+0x16/0x30 arch/x86/kernel/alternative.c:1275 + arch_jump_label_transform_apply+0x13/0x20 arch/x86/kernel/jump_label.c:145 + jump_label_update+0x1d5/0x430 kernel/jump_label.c:830 + static_key_disable_cpuslocked+0x152/0x1b0 kernel/jump_label.c:207 + static_key_disable+0x16/0x20 kernel/jump_label.c:215 + toggle_allocation_gate mm/kfence/core.c:637 [inline] + toggle_allocation_gate+0x185/0x390 mm/kfence/core.c:615 + process_one_work+0x98d/0x1630 kernel/workqueue.c:2276 + worker_thread+0x658/0x11f0 kernel/workqueue.c:2422 + kthread+0x3e5/0x4d0 kernel/kthread.c:319 + ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 +---------------- +Code disassembly (best guess): + 0: 1d ad 91 bc 7e sbb $0x7ebc91ad,%eax + 5: 65 8b 05 a6 91 bc 7e mov %gs:0x7ebc91a6(%rip),%eax # 0x7ebc91b2 + c: a9 00 ff ff 00 test $0xffff00,%eax + 11: 74 45 je 0x58 + 13: bf 01 00 00 00 mov $0x1,%edi + 18: e8 15 2a 09 00 callq 0x92a32 + 1d: e8 50 84 35 00 callq 0x358472 + 22: fb sti + 23: 65 8b 05 88 91 bc 7e mov %gs:0x7ebc9188(%rip),%eax # 0x7ebc91b2 + 2a: 85 c0 test %eax,%eax <-- trapping instruction + 2c: 74 58 je 0x86 + 2e: 5b pop %rbx + 2f: 5d pop %rbp + 30: c3 retq + 31: 65 8b 05 d6 98 bc 7e mov %gs:0x7ebc98d6(%rip),%eax # 0x7ebc990e + 38: 85 c0 test %eax,%eax + 3a: 75 a2 jne 0xffffffde + 3c: 0f 0b ud2 + 3e: eb 9e jmp 0xffffffde diff --git a/pkg/report/testdata/linux/decompile/arm/0.in b/pkg/report/testdata/linux/decompile/arm/0.in new file mode 100644 index 000000000..00230f823 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/arm/0.in @@ -0,0 +1,108 @@ +8<--- cut here --- +Unable to handle kernel paging request at virtual address e03c4000 +pgd = 86c9a3c0 +[e03c4000] *pgd=80000080007003, *pmd=836b2003, *pte=00000000 +Internal error: Oops: a07 [#1] PREEMPT SMP ARM +Modules linked in: +CPU: 1 PID: 7540 Comm: syz-executor.0 Not tainted 5.12.0-rc3-syzkaller #0 +Hardware name: ARM-Versatile Express +PC is at __raw_writel arch/arm/include/asm/io.h:95 [inline] +PC is at bitfill_aligned drivers/video/fbdev/core/cfbfillrect.c:65 [inline] +PC is at bitfill_aligned+0x94/0x138 drivers/video/fbdev/core/cfbfillrect.c:35 +LR is at bitfill_aligned drivers/video/fbdev/core/cfbfillrect.c:62 [inline] +LR is at bitfill_aligned+0x80/0x138 drivers/video/fbdev/core/cfbfillrect.c:35 +pc : [<808f355c>] lr : [<808f3548>] psr: 20060013 +sp : 86cebad0 ip : 86cebb00 fp : 86cebafc +r10: 0000ff00 r9 : 00000020 r8 : ffffffff +r7 : 00000000 r6 : 00000000 r5 : e03c3000 r4 : 00090000 +r3 : e03c4020 r2 : 000003f0 r1 : 00000020 r0 : 000007f8 +Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none +Control: 30c5387d Table: 86c9a3c0 DAC: 00000000 +Process syz-executor.0 (pid: 7540, stack limit = 0x86cea210) +Stack: (0x86cebad0 to 0x86cec000) +bac0: 00090000 844b9000 00000000 e03c3000 +bae0: 0000ff00 00090000 808f34c8 00000000 86cebb4c 86cebb00 808f3340 808f34d4 +bb00: 0000ff00 00000020 86cebb04 56b92eae 8409a134 844fe41c 00080000 00000000 +bb20: 00000000 86cebb74 844b9000 000002f0 00000010 833a7c6c 833a7c6c 83420800 +bb40: 86cebb6c 86cebb50 809b51b4 808f319c 86cebba4 86cebb60 844b9000 000007f8 +bb60: 86cebbac 86cebb70 808ed840 809b5178 833a7c6c 00000000 00000010 000007f8 +bb80: 000002f0 00000000 00000000 56b92eae 808ed764 833a7b34 844fe400 82b5a808 +bba0: 86cebbc4 86cebbb0 808e7814 808ed770 844b9000 833a7b34 86cebcac 86cebbc8 +bbc0: 808ec8ac 808e77bc 86cebc64 844b9000 844b90a8 00000000 00000000 00000400 +bbe0: 00000300 00000400 00000300 00000000 00000000 00000020 00000000 00000010 +bc00: 00000008 00000000 00000008 00000008 00000000 00000000 00000008 00000000 +bc20: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001 +bc40: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 +bc60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 56b92eae +bc80: 83420800 83420800 00000000 844fe400 00000001 00000000 844fe400 00000000 +bca0: 86cebce4 86cebcb0 8095bc9c 808ec604 00000000 00000000 00000000 56b92eae +bcc0: 00000000 844b9000 83420800 844fe400 00000001 00000000 86cebdc4 86cebce8 +bce0: 808ebb40 8095bbc0 86cebd04 86cebcf8 8181dacc 00000400 00000300 00000400 +bd00: 00000300 00000000 00000000 00000020 00000000 00000010 00000008 00000000 +bd20: 00000008 00000008 00000000 00000000 00000008 00000000 00000000 00000000 +bd40: 00000000 00000000 00000280 00000000 00000000 00000001 00000000 00000000 +bd60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 +bd80: 00000000 00000000 00000000 00000000 00000000 56b92eae 00000001 833aa120 +bda0: 83420800 00000001 00000000 0000003a 83420800 86101000 86cebde4 86cebdc8 +bdc0: 8095bea8 808eb994 00000000 86101000 00004b3a 83420800 86cebe64 86cebde8 +bde0: 809535a8 8095be08 8181dacc 8181d97c 86cebe2c 86cebe00 8181c9a4 8181dabc +be00: 00000000 00000000 81f94a4c 00000103 82bfd371 8550e140 00000003 00000036 +be20: 86cebe54 86cebe30 8027ea14 8181c88c 00000000 56b92eae 81f94a4c fffffdfd +be40: 00004b3a 86101000 8550e140 fffff73a 00000000 86101000 86cebf0c 86cebe68 +be60: 8093f890 80951c38 00000000 56b92eae 837f97e8 0000003a 8353f2f0 0000004b +be80: 00000001 8550e140 00000003 00000036 86cebeec 86cebea0 80701b40 806f7810 +bea0: 00000001 0000004b 0000003a 86cebebc 858256d0 83dc8180 00004b3a 8550e10b +bec0: 86cebeb0 8550e140 00000003 56b92eae 821280c8 00000000 8550e140 56b92eae +bee0: 86cebf0c 00004b3a 00000000 8550e141 00000000 8550e140 00000003 8353f2f0 +bf00: 86cebfa4 86cebf10 804f33f4 8093f4d8 8020d140 8020e34c 00000000 80200e90 +bf20: 828a2438 80200e90 86d32080 80200060 86cebf4c 86cebf40 8181dacc 8181d97c +bf40: 86cebf74 86cebf50 8181cb8c 8181dabc 86cebf98 80384d84 828abd1c 80200e90 +bf60: 60000093 30c5387d 86cebf94 86cebf78 828abd1c 56b92eae 00000000 00000000 +bf80: 00000000 ffffffff 00000036 80200224 86cea000 00000036 00000000 86cebfa8 +bfa0: 80200060 804f32e0 00000000 00000000 00000003 00004b3a 00000000 00000000 +bfc0: 00000000 00000000 ffffffff 00000036 7ed4733a 76f0f6d0 7ed474ac 76f0f20c +bfe0: 76f0f048 76f0f038 00018d58 0004b620 60000010 00000003 00000000 00000000 +Backtrace: +[<808f34c8>] (bitfill_aligned) from [<808f3340>] (sys_fillrect+0x1b0/0x338 drivers/video/fbdev/core/sysfillrect.c:291) + r10:00000000 r9:808f34c8 r8:00090000 r7:0000ff00 r6:e03c3000 r5:00000000 + r4:844b9000 r3:00090000 +[<808f3190>] (sys_fillrect) from [<809b51b4>] (drm_fb_helper_sys_fillrect drivers/gpu/drm/drm_fb_helper.c:764 [inline]) +[<808f3190>] (sys_fillrect) from [<809b51b4>] (drm_fbdev_fb_fillrect+0x48/0x4c drivers/gpu/drm/drm_fb_helper.c:2258) + r10:83420800 r9:833a7c6c r8:833a7c6c r7:00000010 r6:000002f0 r5:844b9000 + r4:86cebb74 +[<809b516c>] (drm_fbdev_fb_fillrect) from [<808ed840>] (bit_clear_margins+0xdc/0x104 drivers/video/fbdev/core/bitblit.c:232) + r5:000007f8 r4:844b9000 +[<808ed764>] (bit_clear_margins) from [<808e7814>] (fbcon_clear_margins+0x64/0x68 drivers/video/fbdev/core/fbcon.c:1315) + r7:82b5a808 r6:844fe400 r5:833a7b34 r4:808ed764 +[<808e77b0>] (fbcon_clear_margins) from [<808ec8ac>] (fbcon_switch+0x2b4/0x4ac drivers/video/fbdev/core/fbcon.c:2143) + r5:833a7b34 r4:844b9000 +[<808ec5f8>] (fbcon_switch) from [<8095bc9c>] (redraw_screen+0xe8/0x248 drivers/tty/vt/vt.c:1021) + r10:00000000 r9:844fe400 r8:00000000 r7:00000001 r6:844fe400 r5:00000000 + r4:83420800 +[<8095bbb4>] (redraw_screen) from [<808ebb40>] (fbcon_blank+0x1b8/0x250 drivers/video/fbdev/core/fbcon.c:2204) + r8:00000000 r7:00000001 r6:844fe400 r5:83420800 r4:844b9000 +[<808eb988>] (fbcon_blank) from [<8095bea8>] (do_unblank_screen+0xac/0x17c drivers/tty/vt/vt.c:4405) + r10:86101000 r9:83420800 r8:0000003a r7:00000000 r6:00000001 r5:83420800 + r4:833aa120 +[<8095bdfc>] (do_unblank_screen) from [<809535a8>] (vt_kdsetmode drivers/tty/vt/vt_ioctl.c:276 [inline]) +[<8095bdfc>] (do_unblank_screen) from [<809535a8>] (vt_k_ioctl drivers/tty/vt/vt_ioctl.c:381 [inline]) +[<8095bdfc>] (do_unblank_screen) from [<809535a8>] (vt_ioctl+0x197c/0x1be8 drivers/tty/vt/vt_ioctl.c:713) + r7:83420800 r6:00004b3a r5:86101000 r4:00000000 +[<80951c2c>] (vt_ioctl) from [<8093f890>] (tty_ioctl+0x3c4/0xc1c drivers/tty/tty_io.c:2801) + r10:86101000 r9:00000000 r8:fffff73a r7:8550e140 r6:86101000 r5:00004b3a + r4:fffffdfd +[<8093f4cc>] (tty_ioctl) from [<804f33f4>] (vfs_ioctl fs/ioctl.c:48 [inline]) +[<8093f4cc>] (tty_ioctl) from [<804f33f4>] (do_vfs_ioctl fs/ioctl.c:725 [inline]) +[<8093f4cc>] (tty_ioctl) from [<804f33f4>] (__do_sys_ioctl fs/ioctl.c:751 [inline]) +[<8093f4cc>] (tty_ioctl) from [<804f33f4>] (sys_ioctl+0x120/0xaa4 fs/ioctl.c:739) + r10:8353f2f0 r9:00000003 r8:8550e140 r7:00000000 r6:8550e141 r5:00000000 + r4:00004b3a +[<804f32d4>] (sys_ioctl) from [<80200060>] (ret_fast_syscall+0x0/0x2c arch/arm/mm/proc-v7.S:64) +Exception stack(0x86cebfa8 to 0x86cebff0) +bfa0: 00000000 00000000 00000003 00004b3a 00000000 00000000 +bfc0: 00000000 00000000 ffffffff 00000036 7ed4733a 76f0f6d0 7ed474ac 76f0f20c +bfe0: 76f0f048 76f0f038 00018d58 0004b620 + r10:00000036 r9:86cea000 r8:80200224 r7:00000036 r6:ffffffff r5:00000000 + r4:00000000 +Code: 9a000012 e2853020 e1a02000 e2422008 (e5034020) +---[ end trace 10de0daf1584b951 ]--- diff --git a/pkg/report/testdata/linux/decompile/arm/0.out b/pkg/report/testdata/linux/decompile/arm/0.out new file mode 100644 index 000000000..49a85c720 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/arm/0.out @@ -0,0 +1,115 @@ +8<--- cut here --- +Unable to handle kernel paging request at virtual address e03c4000 +pgd = 86c9a3c0 +[e03c4000] *pgd=80000080007003, *pmd=836b2003, *pte=00000000 +Internal error: Oops: a07 [#1] PREEMPT SMP ARM +Modules linked in: +CPU: 1 PID: 7540 Comm: syz-executor.0 Not tainted 5.12.0-rc3-syzkaller #0 +Hardware name: ARM-Versatile Express +PC is at __raw_writel arch/arm/include/asm/io.h:95 [inline] +PC is at bitfill_aligned drivers/video/fbdev/core/cfbfillrect.c:65 [inline] +PC is at bitfill_aligned+0x94/0x138 drivers/video/fbdev/core/cfbfillrect.c:35 +LR is at bitfill_aligned drivers/video/fbdev/core/cfbfillrect.c:62 [inline] +LR is at bitfill_aligned+0x80/0x138 drivers/video/fbdev/core/cfbfillrect.c:35 +pc : [<808f355c>] lr : [<808f3548>] psr: 20060013 +sp : 86cebad0 ip : 86cebb00 fp : 86cebafc +r10: 0000ff00 r9 : 00000020 r8 : ffffffff +r7 : 00000000 r6 : 00000000 r5 : e03c3000 r4 : 00090000 +r3 : e03c4020 r2 : 000003f0 r1 : 00000020 r0 : 000007f8 +Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none +Control: 30c5387d Table: 86c9a3c0 DAC: 00000000 +Process syz-executor.0 (pid: 7540, stack limit = 0x86cea210) +Stack: (0x86cebad0 to 0x86cec000) +bac0: 00090000 844b9000 00000000 e03c3000 +bae0: 0000ff00 00090000 808f34c8 00000000 86cebb4c 86cebb00 808f3340 808f34d4 +bb00: 0000ff00 00000020 86cebb04 56b92eae 8409a134 844fe41c 00080000 00000000 +bb20: 00000000 86cebb74 844b9000 000002f0 00000010 833a7c6c 833a7c6c 83420800 +bb40: 86cebb6c 86cebb50 809b51b4 808f319c 86cebba4 86cebb60 844b9000 000007f8 +bb60: 86cebbac 86cebb70 808ed840 809b5178 833a7c6c 00000000 00000010 000007f8 +bb80: 000002f0 00000000 00000000 56b92eae 808ed764 833a7b34 844fe400 82b5a808 +bba0: 86cebbc4 86cebbb0 808e7814 808ed770 844b9000 833a7b34 86cebcac 86cebbc8 +bbc0: 808ec8ac 808e77bc 86cebc64 844b9000 844b90a8 00000000 00000000 00000400 +bbe0: 00000300 00000400 00000300 00000000 00000000 00000020 00000000 00000010 +bc00: 00000008 00000000 00000008 00000008 00000000 00000000 00000008 00000000 +bc20: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001 +bc40: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 +bc60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 56b92eae +bc80: 83420800 83420800 00000000 844fe400 00000001 00000000 844fe400 00000000 +bca0: 86cebce4 86cebcb0 8095bc9c 808ec604 00000000 00000000 00000000 56b92eae +bcc0: 00000000 844b9000 83420800 844fe400 00000001 00000000 86cebdc4 86cebce8 +bce0: 808ebb40 8095bbc0 86cebd04 86cebcf8 8181dacc 00000400 00000300 00000400 +bd00: 00000300 00000000 00000000 00000020 00000000 00000010 00000008 00000000 +bd20: 00000008 00000008 00000000 00000000 00000008 00000000 00000000 00000000 +bd40: 00000000 00000000 00000280 00000000 00000000 00000001 00000000 00000000 +bd60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 +bd80: 00000000 00000000 00000000 00000000 00000000 56b92eae 00000001 833aa120 +bda0: 83420800 00000001 00000000 0000003a 83420800 86101000 86cebde4 86cebdc8 +bdc0: 8095bea8 808eb994 00000000 86101000 00004b3a 83420800 86cebe64 86cebde8 +bde0: 809535a8 8095be08 8181dacc 8181d97c 86cebe2c 86cebe00 8181c9a4 8181dabc +be00: 00000000 00000000 81f94a4c 00000103 82bfd371 8550e140 00000003 00000036 +be20: 86cebe54 86cebe30 8027ea14 8181c88c 00000000 56b92eae 81f94a4c fffffdfd +be40: 00004b3a 86101000 8550e140 fffff73a 00000000 86101000 86cebf0c 86cebe68 +be60: 8093f890 80951c38 00000000 56b92eae 837f97e8 0000003a 8353f2f0 0000004b +be80: 00000001 8550e140 00000003 00000036 86cebeec 86cebea0 80701b40 806f7810 +bea0: 00000001 0000004b 0000003a 86cebebc 858256d0 83dc8180 00004b3a 8550e10b +bec0: 86cebeb0 8550e140 00000003 56b92eae 821280c8 00000000 8550e140 56b92eae +bee0: 86cebf0c 00004b3a 00000000 8550e141 00000000 8550e140 00000003 8353f2f0 +bf00: 86cebfa4 86cebf10 804f33f4 8093f4d8 8020d140 8020e34c 00000000 80200e90 +bf20: 828a2438 80200e90 86d32080 80200060 86cebf4c 86cebf40 8181dacc 8181d97c +bf40: 86cebf74 86cebf50 8181cb8c 8181dabc 86cebf98 80384d84 828abd1c 80200e90 +bf60: 60000093 30c5387d 86cebf94 86cebf78 828abd1c 56b92eae 00000000 00000000 +bf80: 00000000 ffffffff 00000036 80200224 86cea000 00000036 00000000 86cebfa8 +bfa0: 80200060 804f32e0 00000000 00000000 00000003 00004b3a 00000000 00000000 +bfc0: 00000000 00000000 ffffffff 00000036 7ed4733a 76f0f6d0 7ed474ac 76f0f20c +bfe0: 76f0f048 76f0f038 00018d58 0004b620 60000010 00000003 00000000 00000000 +Backtrace: +[<808f34c8>] (bitfill_aligned) from [<808f3340>] (sys_fillrect+0x1b0/0x338 drivers/video/fbdev/core/sysfillrect.c:291) + r10:00000000 r9:808f34c8 r8:00090000 r7:0000ff00 r6:e03c3000 r5:00000000 + r4:844b9000 r3:00090000 +[<808f3190>] (sys_fillrect) from [<809b51b4>] (drm_fb_helper_sys_fillrect drivers/gpu/drm/drm_fb_helper.c:764 [inline]) +[<808f3190>] (sys_fillrect) from [<809b51b4>] (drm_fbdev_fb_fillrect+0x48/0x4c drivers/gpu/drm/drm_fb_helper.c:2258) + r10:83420800 r9:833a7c6c r8:833a7c6c r7:00000010 r6:000002f0 r5:844b9000 + r4:86cebb74 +[<809b516c>] (drm_fbdev_fb_fillrect) from [<808ed840>] (bit_clear_margins+0xdc/0x104 drivers/video/fbdev/core/bitblit.c:232) + r5:000007f8 r4:844b9000 +[<808ed764>] (bit_clear_margins) from [<808e7814>] (fbcon_clear_margins+0x64/0x68 drivers/video/fbdev/core/fbcon.c:1315) + r7:82b5a808 r6:844fe400 r5:833a7b34 r4:808ed764 +[<808e77b0>] (fbcon_clear_margins) from [<808ec8ac>] (fbcon_switch+0x2b4/0x4ac drivers/video/fbdev/core/fbcon.c:2143) + r5:833a7b34 r4:844b9000 +[<808ec5f8>] (fbcon_switch) from [<8095bc9c>] (redraw_screen+0xe8/0x248 drivers/tty/vt/vt.c:1021) + r10:00000000 r9:844fe400 r8:00000000 r7:00000001 r6:844fe400 r5:00000000 + r4:83420800 +[<8095bbb4>] (redraw_screen) from [<808ebb40>] (fbcon_blank+0x1b8/0x250 drivers/video/fbdev/core/fbcon.c:2204) + r8:00000000 r7:00000001 r6:844fe400 r5:83420800 r4:844b9000 +[<808eb988>] (fbcon_blank) from [<8095bea8>] (do_unblank_screen+0xac/0x17c drivers/tty/vt/vt.c:4405) + r10:86101000 r9:83420800 r8:0000003a r7:00000000 r6:00000001 r5:83420800 + r4:833aa120 +[<8095bdfc>] (do_unblank_screen) from [<809535a8>] (vt_kdsetmode drivers/tty/vt/vt_ioctl.c:276 [inline]) +[<8095bdfc>] (do_unblank_screen) from [<809535a8>] (vt_k_ioctl drivers/tty/vt/vt_ioctl.c:381 [inline]) +[<8095bdfc>] (do_unblank_screen) from [<809535a8>] (vt_ioctl+0x197c/0x1be8 drivers/tty/vt/vt_ioctl.c:713) + r7:83420800 r6:00004b3a r5:86101000 r4:00000000 +[<80951c2c>] (vt_ioctl) from [<8093f890>] (tty_ioctl+0x3c4/0xc1c drivers/tty/tty_io.c:2801) + r10:86101000 r9:00000000 r8:fffff73a r7:8550e140 r6:86101000 r5:00004b3a + r4:fffffdfd +[<8093f4cc>] (tty_ioctl) from [<804f33f4>] (vfs_ioctl fs/ioctl.c:48 [inline]) +[<8093f4cc>] (tty_ioctl) from [<804f33f4>] (do_vfs_ioctl fs/ioctl.c:725 [inline]) +[<8093f4cc>] (tty_ioctl) from [<804f33f4>] (__do_sys_ioctl fs/ioctl.c:751 [inline]) +[<8093f4cc>] (tty_ioctl) from [<804f33f4>] (sys_ioctl+0x120/0xaa4 fs/ioctl.c:739) + r10:8353f2f0 r9:00000003 r8:8550e140 r7:00000000 r6:8550e141 r5:00000000 + r4:00004b3a +[<804f32d4>] (sys_ioctl) from [<80200060>] (ret_fast_syscall+0x0/0x2c arch/arm/mm/proc-v7.S:64) +Exception stack(0x86cebfa8 to 0x86cebff0) +bfa0: 00000000 00000000 00000003 00004b3a 00000000 00000000 +bfc0: 00000000 00000000 ffffffff 00000036 7ed4733a 76f0f6d0 7ed474ac 76f0f20c +bfe0: 76f0f048 76f0f038 00018d58 0004b620 + r10:00000036 r9:86cea000 r8:80200224 r7:00000036 r6:ffffffff r5:00000000 + r4:00000000 +Code: 9a000012 e2853020 e1a02000 e2422008 (e5034020) +---[ end trace 10de0daf1584b951 ]--- +---------------- +Code disassembly (best guess): + 0: 9a000012 bls 0x50 + 4: e2853020 add r3, r5, #32 + 8: e1a02000 mov r2, r0 + c: e2422008 sub r2, r2, #8 + 10: e5034020 str r4, [r3, #-32] ; 0xffffffe0 <-- trapping instruction diff --git a/pkg/report/testdata/linux/decompile/arm64/0.in b/pkg/report/testdata/linux/decompile/arm64/0.in new file mode 100644 index 000000000..654ec9506 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/arm64/0.in @@ -0,0 +1,42 @@ +------------[ cut here ]------------ +kernel BUG at kernel/power/snapshot.c:257! +Internal error: Oops - BUG: 0 [#1] PREEMPT SMP +Modules linked in: +CPU: 1 PID: 14825 Comm: syz-executor.1 Not tainted 5.11.0-rc6-syzkaller-00055-g3aaf0a27ffc2 #0 +Hardware name: linux,dummy-virt (DT) +pstate: 20400009 (nzCv daif +PAN -UAO -TCO BTYPE=--) +pc : free_image_page kernel/power/snapshot.c:257 [inline] +pc : free_image_page kernel/power/snapshot.c:253 [inline] +pc : free_list_of_pages kernel/power/snapshot.c:274 [inline] +pc : memory_bm_free+0x260/0x320 kernel/power/snapshot.c:726 +lr : free_basic_memory_bitmaps+0x3c/0x90 kernel/power/snapshot.c:1173 +sp : ffff800014ffbc50 +x29: ffff800014ffbc50 x28: f2ff000029a10070 +x27: ffff800012d4c000 x26: f2ff000029a10008 +x25: f3ff00002672c700 x24: ffff800012d4c000 +x23: 00007fffffffffff x22: f2ff000029a10018 +x21: 0000000000000001 x20: ffff800013b576d0 +x19: f3ff00002672c700 x18: 0000000000000000 +x17: 0000000000000000 x16: 0000000000000000 +x15: 0000000000000000 x14: 0000000000000000 +x13: 0000000000000000 x12: 0000000000000000 +x11: 0000000000000000 x10: 0000000000000000 +x9 : 0000000000000000 x8 : 0000000000000000 +x7 : 0000000000000000 x6 : 00000000000001ff +x5 : 0000000000000000 x4 : 0000000000000000 +x3 : ffff800013b576d0 x2 : fdff000026770000 +x1 : 0000000000000001 x0 : 0200000026770000 +Call trace: + free_image_page kernel/power/snapshot.c:257 [inline] + free_list_of_pages kernel/power/snapshot.c:274 [inline] + memory_bm_free+0x260/0x320 kernel/power/snapshot.c:726 + free_basic_memory_bitmaps+0x3c/0x90 kernel/power/snapshot.c:1173 + snapshot_release+0x74/0x90 kernel/power/user.c:120 + __fput+0x78/0x230 fs/file_table.c:280 + ____fput+0x10/0x20 fs/file_table.c:313 + task_work_run+0x80/0x160 kernel/task_work.c:140 + tracehook_notify_resume include/linux/tracehook.h:189 [inline] + do_notify_resume+0x20c/0x13e0 arch/arm64/kernel/signal.c:939 + work_pending+0xc/0x3d4 +Code: cb000260 d34cfc00 97fcf6fe 35fffc20 (d4210000) +---[ end trace 9cab793efd001cad ]--- diff --git a/pkg/report/testdata/linux/decompile/arm64/0.out b/pkg/report/testdata/linux/decompile/arm64/0.out new file mode 100644 index 000000000..2b6406f60 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/arm64/0.out @@ -0,0 +1,49 @@ +------------[ cut here ]------------ +kernel BUG at kernel/power/snapshot.c:257! +Internal error: Oops - BUG: 0 [#1] PREEMPT SMP +Modules linked in: +CPU: 1 PID: 14825 Comm: syz-executor.1 Not tainted 5.11.0-rc6-syzkaller-00055-g3aaf0a27ffc2 #0 +Hardware name: linux,dummy-virt (DT) +pstate: 20400009 (nzCv daif +PAN -UAO -TCO BTYPE=--) +pc : free_image_page kernel/power/snapshot.c:257 [inline] +pc : free_image_page kernel/power/snapshot.c:253 [inline] +pc : free_list_of_pages kernel/power/snapshot.c:274 [inline] +pc : memory_bm_free+0x260/0x320 kernel/power/snapshot.c:726 +lr : free_basic_memory_bitmaps+0x3c/0x90 kernel/power/snapshot.c:1173 +sp : ffff800014ffbc50 +x29: ffff800014ffbc50 x28: f2ff000029a10070 +x27: ffff800012d4c000 x26: f2ff000029a10008 +x25: f3ff00002672c700 x24: ffff800012d4c000 +x23: 00007fffffffffff x22: f2ff000029a10018 +x21: 0000000000000001 x20: ffff800013b576d0 +x19: f3ff00002672c700 x18: 0000000000000000 +x17: 0000000000000000 x16: 0000000000000000 +x15: 0000000000000000 x14: 0000000000000000 +x13: 0000000000000000 x12: 0000000000000000 +x11: 0000000000000000 x10: 0000000000000000 +x9 : 0000000000000000 x8 : 0000000000000000 +x7 : 0000000000000000 x6 : 00000000000001ff +x5 : 0000000000000000 x4 : 0000000000000000 +x3 : ffff800013b576d0 x2 : fdff000026770000 +x1 : 0000000000000001 x0 : 0200000026770000 +Call trace: + free_image_page kernel/power/snapshot.c:257 [inline] + free_list_of_pages kernel/power/snapshot.c:274 [inline] + memory_bm_free+0x260/0x320 kernel/power/snapshot.c:726 + free_basic_memory_bitmaps+0x3c/0x90 kernel/power/snapshot.c:1173 + snapshot_release+0x74/0x90 kernel/power/user.c:120 + __fput+0x78/0x230 fs/file_table.c:280 + ____fput+0x10/0x20 fs/file_table.c:313 + task_work_run+0x80/0x160 kernel/task_work.c:140 + tracehook_notify_resume include/linux/tracehook.h:189 [inline] + do_notify_resume+0x20c/0x13e0 arch/arm64/kernel/signal.c:939 + work_pending+0xc/0x3d4 +Code: cb000260 d34cfc00 97fcf6fe 35fffc20 (d4210000) +---[ end trace 9cab793efd001cad ]--- +---------------- +Code disassembly (best guess): + 0: cb000260 sub x0, x19, x0 + 4: d34cfc00 lsr x0, x0, #12 + 8: 97fcf6fe bl 0xfffffffffff3dc00 + c: 35fffc20 cbnz w0, 0xffffffffffffff90 + 10: d4210000 brk #0x800 <-- trapping instruction diff --git a/pkg/report/testdata/linux/decompile/arm64/1.in b/pkg/report/testdata/linux/decompile/arm64/1.in new file mode 100644 index 000000000..3365cbc32 --- /dev/null +++ b/pkg/report/testdata/linux/decompile/arm64/1.in @@ -0,0 +1,49 @@ +Internal error: synchronous external abort: 96000050 [#1] PREEMPT SMP +Modules linked in: +CPU: 0 PID: 5594 Comm: syz-executor.1 Not tainted 5.14.0-rc3-syzkaller #0 +Hardware name: linux,dummy-virt (DT) +pstate: 800000c5 (Nzcv daIF -PAN -UAO -TCO BTYPE=--) +pc : __raw_writeb arch/arm64/include/asm/io.h:27 [inline] +pc : _outb include/asm-generic/io.h:501 [inline] +pc : logic_outb+0x3c/0x114 lib/logic_pio.c:302 +lr : io_serial_out+0x80/0xc0 drivers/tty/serial/8250/8250_port.c:453 +sp : ffff80001bdb78f0 +x29: ffff80001bdb78f0 x28: ffff000010efe000 x27: ffff80001bdd9018 +x26: ffff80001bdd9000 x25: ffff80001bddb310 x24: 1ffff000037bb203 +x23: ffff000010efe600 x22: 0000000000000000 x21: 0000000000000002 +x20: 0000000000000002 x19: fffffbfffe800001 x18: 0000000000000000 +x17: 0000000000000000 x16: 0000000000000003 x15: ffff8000160853e0 +x14: 1ffff000037b6efc x13: 1ffff000037b6e7a x12: ffff7000037b6f27 +x11: 1ffff000037b6f26 x10: ffff7000037b6f26 x9 : dfff800000000000 +x8 : 0000000000000003 x7 : 0000000000000001 x6 : 0000000000000004 +x5 : ffff80001bdb7930 x4 : dfff800000000000 x3 : 0000000000000001 +x2 : 1ffff0000309aea7 x1 : fffffbfffe800000 x0 : 0000000000ffbffe +Call trace: + _outb include/asm-generic/io.h:501 [inline] + logic_outb+0x3c/0x114 lib/logic_pio.c:302 + io_serial_out+0x80/0xc0 drivers/tty/serial/8250/8250_port.c:453 + serial_out drivers/tty/serial/8250/8250.h:120 [inline] + serial8250_set_THRI drivers/tty/serial/8250/8250.h:140 [inline] + __start_tx drivers/tty/serial/8250/8250_port.c:1561 [inline] + serial8250_start_tx+0x338/0x680 drivers/tty/serial/8250/8250_port.c:1660 + __uart_start.isra.0+0x108/0x150 drivers/tty/serial/serial_core.c:127 + uart_start+0xe0/0x210 drivers/tty/serial/serial_core.c:137 + uart_flush_chars+0x10/0x20 drivers/tty/serial/serial_core.c:549 + __receive_buf drivers/tty/n_tty.c:1581 [inline] + n_tty_receive_buf_common+0xa78/0x43bc drivers/tty/n_tty.c:1674 + n_tty_receive_buf+0x14/0x20 drivers/tty/n_tty.c:1703 + tiocsti drivers/tty/tty_io.c:2311 [inline] + tty_ioctl+0xf94/0x1a34 drivers/tty/tty_io.c:2719 + vfs_ioctl fs/ioctl.c:51 [inline] + __do_sys_ioctl fs/ioctl.c:1069 [inline] + __se_sys_ioctl fs/ioctl.c:1055 [inline] + __arm64_sys_ioctl+0x120/0x190 fs/ioctl.c:1055 + __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline] + invoke_syscall+0x6c/0x260 arch/arm64/kernel/syscall.c:52 + el0_svc_common+0xcc/0x1f4 arch/arm64/kernel/syscall.c:145 + do_el0_svc+0xa4/0xd0 arch/arm64/kernel/syscall.c:184 + el0_svc+0x24/0x3c arch/arm64/kernel/entry-common.c:511 + el0t_64_sync_handler+0x1a4/0x1ac arch/arm64/kernel/entry-common.c:527 + el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:574 +Code: d2bfd001 f2df7fe1 f2ffffe1 8b010273 (39000274) +---[ end trace a5c31328c4dd2c04 ]--- diff --git a/pkg/report/testdata/linux/decompile/arm64/1.out b/pkg/report/testdata/linux/decompile/arm64/1.out new file mode 100644 index 000000000..c07a4756b --- /dev/null +++ b/pkg/report/testdata/linux/decompile/arm64/1.out @@ -0,0 +1,56 @@ +Internal error: synchronous external abort: 96000050 [#1] PREEMPT SMP +Modules linked in: +CPU: 0 PID: 5594 Comm: syz-executor.1 Not tainted 5.14.0-rc3-syzkaller #0 +Hardware name: linux,dummy-virt (DT) +pstate: 800000c5 (Nzcv daIF -PAN -UAO -TCO BTYPE=--) +pc : __raw_writeb arch/arm64/include/asm/io.h:27 [inline] +pc : _outb include/asm-generic/io.h:501 [inline] +pc : logic_outb+0x3c/0x114 lib/logic_pio.c:302 +lr : io_serial_out+0x80/0xc0 drivers/tty/serial/8250/8250_port.c:453 +sp : ffff80001bdb78f0 +x29: ffff80001bdb78f0 x28: ffff000010efe000 x27: ffff80001bdd9018 +x26: ffff80001bdd9000 x25: ffff80001bddb310 x24: 1ffff000037bb203 +x23: ffff000010efe600 x22: 0000000000000000 x21: 0000000000000002 +x20: 0000000000000002 x19: fffffbfffe800001 x18: 0000000000000000 +x17: 0000000000000000 x16: 0000000000000003 x15: ffff8000160853e0 +x14: 1ffff000037b6efc x13: 1ffff000037b6e7a x12: ffff7000037b6f27 +x11: 1ffff000037b6f26 x10: ffff7000037b6f26 x9 : dfff800000000000 +x8 : 0000000000000003 x7 : 0000000000000001 x6 : 0000000000000004 +x5 : ffff80001bdb7930 x4 : dfff800000000000 x3 : 0000000000000001 +x2 : 1ffff0000309aea7 x1 : fffffbfffe800000 x0 : 0000000000ffbffe +Call trace: + _outb include/asm-generic/io.h:501 [inline] + logic_outb+0x3c/0x114 lib/logic_pio.c:302 + io_serial_out+0x80/0xc0 drivers/tty/serial/8250/8250_port.c:453 + serial_out drivers/tty/serial/8250/8250.h:120 [inline] + serial8250_set_THRI drivers/tty/serial/8250/8250.h:140 [inline] + __start_tx drivers/tty/serial/8250/8250_port.c:1561 [inline] + serial8250_start_tx+0x338/0x680 drivers/tty/serial/8250/8250_port.c:1660 + __uart_start.isra.0+0x108/0x150 drivers/tty/serial/serial_core.c:127 + uart_start+0xe0/0x210 drivers/tty/serial/serial_core.c:137 + uart_flush_chars+0x10/0x20 drivers/tty/serial/serial_core.c:549 + __receive_buf drivers/tty/n_tty.c:1581 [inline] + n_tty_receive_buf_common+0xa78/0x43bc drivers/tty/n_tty.c:1674 + n_tty_receive_buf+0x14/0x20 drivers/tty/n_tty.c:1703 + tiocsti drivers/tty/tty_io.c:2311 [inline] + tty_ioctl+0xf94/0x1a34 drivers/tty/tty_io.c:2719 + vfs_ioctl fs/ioctl.c:51 [inline] + __do_sys_ioctl fs/ioctl.c:1069 [inline] + __se_sys_ioctl fs/ioctl.c:1055 [inline] + __arm64_sys_ioctl+0x120/0x190 fs/ioctl.c:1055 + __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline] + invoke_syscall+0x6c/0x260 arch/arm64/kernel/syscall.c:52 + el0_svc_common+0xcc/0x1f4 arch/arm64/kernel/syscall.c:145 + do_el0_svc+0xa4/0xd0 arch/arm64/kernel/syscall.c:184 + el0_svc+0x24/0x3c arch/arm64/kernel/entry-common.c:511 + el0t_64_sync_handler+0x1a4/0x1ac arch/arm64/kernel/entry-common.c:527 + el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:574 +Code: d2bfd001 f2df7fe1 f2ffffe1 8b010273 (39000274) +---[ end trace a5c31328c4dd2c04 ]--- +---------------- +Code disassembly (best guess): + 0: d2bfd001 mov x1, #0xfe800000 // #4269801472 + 4: f2df7fe1 movk x1, #0xfbff, lsl #32 + 8: f2ffffe1 movk x1, #0xffff, lsl #48 + c: 8b010273 add x19, x19, x1 + 10: 39000274 strb w20, [x19] <-- trapping instruction -- cgit mrf-deployment