From b8dec324f21eef8150d21b5b49559777e013fa5d Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Tue, 9 Apr 2019 13:49:32 +0200 Subject: pkg/report: refine stalls in compat ioctl's --- pkg/report/linux.go | 3 +-- pkg/report/testdata/linux/report/318 | 42 +---------------------------------- pkg/report/testdata/linux/report/368 | 43 ++++++++++++++++++++++++++++++++++++ 3 files changed, 45 insertions(+), 43 deletions(-) create mode 100644 pkg/report/testdata/linux/report/368 (limited to 'pkg/report') diff --git a/pkg/report/linux.go b/pkg/report/linux.go index 0d5346d82..df2d303d7 100644 --- a/pkg/report/linux.go +++ b/pkg/report/linux.go @@ -637,8 +637,7 @@ var linuxStallAnchorFrames = []*regexp.Regexp{ compile("^sock_do_ioctl"), compile("^sock_ioctl"), compile("^compat_sock_ioctl"), - compile("^(compat_)?(SYSC|SyS|__sys|___sys|__do_sys|__se_sys|__x64_sys)_socketpair"), - compile("^(compat_)?(SYSC|SyS|__sys|___sys|__do_sys|__se_sys|__x64_sys)_connect"), + compile("^(compat_)?(SYSC|SyS|__sys|___sys|__do_sys|__se_sys|__x64_sys)_(socketpair|connect|ioctl)"), // Page fault entry points: compile("__do_fault"), compile("handle_mm_fault"), diff --git a/pkg/report/testdata/linux/report/318 b/pkg/report/testdata/linux/report/318 index 3639219f6..26f198c05 100644 --- a/pkg/report/testdata/linux/report/318 +++ b/pkg/report/testdata/linux/report/318 @@ -1,4 +1,4 @@ -TITLE: INFO: rcu detected stall in ioctl +TITLE: INFO: rcu detected stall in kvm_vm_compat_ioctl [ 393.750282] INFO: rcu_sched self-detected stall on CPU [ 393.755773] 1: (104999 ticks this GP) idle=235/140000000000001/0 softirq=67058/67058 fqs=202 @@ -15,55 +15,15 @@ TITLE: INFO: rcu detected stall in ioctl [ 393.830211] [] dump_cpu_task+0x7e/0x83 [ 393.835736] [] rcu_dump_cpu_stacks+0x155/0x169 [ 393.841950] [] rcu_check_callbacks.cold.75+0x61e/0xc77 -[ 393.848861] [] ? __lock_is_held+0xa4/0xf0 [ 393.854649] [] update_process_times+0x3f/0x70 [ 393.860782] [] tick_sched_handle.isra.16+0x5a/0x100 [ 393.867430] [] tick_sched_timer+0x7a/0x130 [ 393.873296] [] __hrtimer_run_queues+0x3a5/0xc50 -[ 393.879597] [] ? tick_sched_do_timer+0xa0/0xa0 -[ 393.885818] [] ? retrigger_next_event+0x180/0x180 -[ 393.892295] [] ? kvm_clock_read+0x25/0x30 -[ 393.898079] [] ? kvm_clock_get_cycles+0x9/0x10 -[ 393.904295] [] ? ktime_get_update_offsets_now+0x2ad/0x350 [ 393.911466] [] hrtimer_interrupt+0x18e/0x400 [ 393.917506] [] local_apic_timer_interrupt+0x74/0x90 [ 393.924153] [] smp_trace_apic_timer_interrupt+0x13a/0x4bd [ 393.931325] [] smp_trace_apic_timer_interrupt_entry_after_kaiser_bti+0x20/0x2e [ 393.940311] [] ? debug_lockdep_rcu_enabled+0x3b/0x90 -[ 393.947806] [] kvm_vm_ioctl_clear_memory_ondemand_state+0x43c/0x580 -[ 393.955846] [] ? kvm_vm_ioctl_clear_memory_ondemand_state+0x5/0x580 -[ 393.963918] [] kvm_vm_ioctl+0xb66/0x1700 -[ 393.969623] [] ? refill_pi_state_cache.part.8+0x200/0x200 -[ 393.976805] [] ? kvm_vm_ioctl_set_memory_ondemand_state+0x4b0/0x4b0 -[ 393.984841] [] ? drop_futex_key_refs.isra.11+0x63/0xf0 -[ 393.991753] [] ? futex_wait+0x335/0x600 -[ 393.997376] [] ? _raw_spin_unlock_irqrestore+0x77/0x80 -[ 394.004285] [] ? __lock_acquire+0x974/0x5350 -[ 394.010340] [] ? try_to_wake_up+0x64/0x7c0 -[ 394.016211] [] ? __fget+0x271/0x580 -[ 394.021476] [] ? perf_trace_lock+0xb4/0x5c0 -[ 394.027431] [] ? perf_trace_lock_acquire+0x6a0/0x6a0 -[ 394.034195] [] ? check_noncircular+0x20/0x20 -[ 394.040235] [] ? debug_lockdep_rcu_enabled+0x77/0x90 -[ 394.046981] [] ? __lock_acquire+0x120f/0x5350 -[ 394.053108] [] ? check_noncircular+0x20/0x20 -[ 394.059147] [] ? check_noncircular+0x20/0x20 -[ 394.065188] [] ? __fget+0x271/0x580 -[ 394.070652] [] ? __lock_is_held+0xa4/0xf0 [ 394.076457] [] kvm_vm_compat_ioctl+0x13c/0x250 -[ 394.082674] [] ? kvm_vm_ioctl+0x1700/0x1700 -[ 394.088649] [] ? __fget_light+0xac/0x440 -[ 394.094351] [] ? security_file_ioctl+0x8e/0xc0 -[ 394.100565] [] ? kvm_vm_ioctl+0x1700/0x1700 [ 394.106616] [] compat_SyS_ioctl+0x650/0x2180 -[ 394.112658] [] ? kvm_clock_read+0x30/0x30 -[ 394.118440] [] ? posix_ktime_get_ts+0x1a/0x20 -[ 394.124672] [] ? compat_SyS_open_by_handle_at+0x30/0x30 -[ 394.131671] [] ? __might_fault+0x97/0x1d0 -[ 394.137452] [] ? posix_get_monotonic_raw+0x20/0x20 -[ 394.144018] [] ? SyS_clock_gettime+0x141/0x230 -[ 394.150324] [] ? syscall_trace_enter_phase1+0x379/0x560 -[ 394.157321] [] ? trace_event_raw_event_sys_enter_tiny+0x320/0x320 -[ 394.165189] [] ? do_audit_syscall_entry+0xd8/0x240 -[ 394.171752] [] ? syscall_trace_enter_phase2+0x1bd/0x9d0 [ 394.178750] [] sysenter_dispatch+0xf/0x32 diff --git a/pkg/report/testdata/linux/report/368 b/pkg/report/testdata/linux/report/368 new file mode 100644 index 000000000..396843801 --- /dev/null +++ b/pkg/report/testdata/linux/report/368 @@ -0,0 +1,43 @@ +TITLE: INFO: rcu detected stall in kvm_vm_compat_ioctl + +[ 804.522871] INFO: rcu_sched self-detected stall on CPU +[ 804.529252] 1-....: (10499 ticks this GP) idle=fa6/140000000000001/0 softirq=95936/95936 fqs=5159 +[ 804.539091] (t=10500 jiffies g=20436 c=20435 q=6178) +[ 804.545042] NMI backtrace for cpu 1 +[ 804.549096] CPU: 1 PID: 27600 Comm: syz-executor.2 Not tainted 4.15.0 #2 +[ 804.556384] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 +[ 804.566739] Call Trace: +[ 804.569694] +[ 804.571886] [] dump_stack+0x14d/0x20b +[ 804.584399] [] nmi_cpu_backtrace.cold+0x19/0x98 +[ 804.597748] [] nmi_trigger_cpumask_backtrace+0x16a/0x17e +[ 804.605275] [] arch_trigger_cpumask_backtrace+0x14/0x20 +[ 804.612389] [] rcu_dump_cpu_stacks+0x189/0x1d5 +[ 804.618969] [] rcu_check_callbacks.cold+0x51c/0xc29 +[ 804.641740] [] update_process_times+0x32/0x80 +[ 804.648033] [] tick_sched_handle+0xa0/0x180 +[ 804.654215] [] tick_sched_timer+0x44/0x130 +[ 804.660116] [] __hrtimer_run_queues+0x307/0xd90 +[ 804.680546] [] hrtimer_interrupt+0x2ea/0x730 +[ 804.686753] [] smp_apic_timer_interrupt+0x144/0x5e0 +[ 804.693685] [] apic_timer_interrupt+0x8e/0xa0 +[ 804.700024] +[ 804.702566] RIP: 0010:lock_is_held_type+0xff/0x150 +[ 804.707490] RSP: 0018:ffff8801c13939f8 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff12 +[ 804.715384] RAX: 0000000000000007 RBX: 0000000000000246 RCX: ffffc90002d1d000 +[ 804.722880] RDX: 0000000000000000 RSI: ffffc9001195b0a0 RDI: 0000000000000246 +[ 804.730637] RBP: ffff8801c1393a18 R08: ffff8801a6e88240 R09: 00000000001004d7 +[ 804.738556] R10: ffff8801a6e88bd8 R11: 0000000000000001 R12: 0000000000000000 +[ 804.746415] R13: ffff8801a6e88240 R14: dffffc0000000000 R15: ffffc9001195b000 +[ 804.770545] [] kvm_vm_ioctl+0x719/0x1bc0 +[ 804.831940] [] kvm_vm_compat_ioctl+0x13c/0x23d +[ 804.875188] [] compat_SyS_ioctl+0x13c/0x3410 +[ 804.887548] [] do_fast_syscall_32+0x357/0xcd1 +[ 804.900965] [] entry_SYSENTER_compat+0x8b/0x9d +[ 804.907706] RIP: 0023:0xf7f60c69 +[ 804.911212] RSP: 002b:00000000f5d5c0cc EFLAGS: 00000286 ORIG_RAX: 0000000000000036 +[ 804.919931] RAX: ffffffffffffffda RBX: 0000000000000004 RCX: 000000004010aef4 +[ 804.927876] RDX: 00000000200000c0 RSI: 0000000000000000 RDI: 0000000000000000 +[ 804.935455] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 +[ 804.943529] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 +[ 804.952247] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 -- cgit mrf-deployment