Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753455AbcJEIIv (ORCPT ); Wed, 5 Oct 2016 04:08:51 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44610 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752909AbcJEIIr (ORCPT ); Wed, 5 Oct 2016 04:08:47 -0400 Date: Wed, 5 Oct 2016 10:08:42 +0200 From: Jiri Olsa To: Michael Ellerman Cc: Jiri Olsa , Peter Zijlstra , lkml , Ingo Molnar , Michael Neuling , Paul Mackerras , Alexander Shishkin , Jan Stancek Subject: Re: [PATCH] perf powerpc: Don't call perf_event_disable from atomic context Message-ID: <20161005080842.GA6467@krava> References: <1474466134-21823-1-git-send-email-jolsa@kernel.org> <87twcs4uys.fsf@concordia.ellerman.id.au> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87twcs4uys.fsf@concordia.ellerman.id.au> User-Agent: Mutt/1.7.0 (2016-08-17) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Wed, 05 Oct 2016 08:08:46 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 5168 Lines: 86 On Tue, Oct 04, 2016 at 03:08:27PM +1100, Michael Ellerman wrote: > Jiri Olsa writes: > > > The trinity syscall fuzzer triggered following WARN on powerpc: > > WARNING: CPU: 9 PID: 2998 at arch/powerpc/kernel/hw_breakpoint.c:278 > > ... > > NIP [c00000000093aedc] .hw_breakpoint_handler+0x28c/0x2b0 > > LR [c00000000093aed8] .hw_breakpoint_handler+0x288/0x2b0 > > Call Trace: > > [c0000002f7933580] [c00000000093aed8] .hw_breakpoint_handler+0x288/0x2b0 (unreliable) > > [c0000002f7933630] [c0000000000f671c] .notifier_call_chain+0x7c/0xf0 > > [c0000002f79336d0] [c0000000000f6abc] .__atomic_notifier_call_chain+0xbc/0x1c0 > > [c0000002f7933780] [c0000000000f6c40] .notify_die+0x70/0xd0 > > [c0000002f7933820] [c00000000001a74c] .do_break+0x4c/0x100 > > [c0000002f7933920] [c0000000000089fc] handle_dabr_fault+0x14/0x48 > > Is that the full stack trace? It doesn't look like it. > > And were you running trinity as root or regular user? I cut it just to contain the backtrace.. attached full one from another instance of this error. Jan, could you please answer the trinity question? thanks, jirka --- [ 4557.360587] =============================== [ 4557.360590] [ INFO: suspicious RCU usage. ] [ 4557.360593] 3.10.0-379.el7.ppc64le.debug #1 Tainted: G W ------------ [ 4557.360596] ------------------------------- [ 4557.360599] include/linux/rcupdate.h:488 Illegal context switch in RCU read-side critical section! [ 4557.360602] [ 4557.360602] other info that might help us debug this: [ 4557.360602] [ 4557.360606] [ 4557.360606] rcu_scheduler_active = 1, debug_locks = 0 [ 4557.360610] 2 locks held by trinity-c0/138777: [ 4557.360613] #0: (rcu_read_lock){.+.+..}, at: [] notify_die+0x8/0x1c0 [ 4557.360622] #1: (rcu_read_lock){.+.+..}, at: [] hw_breakpoint_handler+0x8/0x310 [ 4557.360631] [ 4557.360631] stack backtrace: [ 4557.360635] CPU: 0 PID: 138777 Comm: trinity-c0 Tainted: G W ------------ 3.10.0-379.el7.ppc64le.debug #1 [ 4557.360639] Call Trace: [ 4557.360641] [c00000042844b510] [c000000000019e18] show_stack+0x88/0x390 (unreliable) [ 4557.360647] [c00000042844b5d0] [c000000000a7ab04] dump_stack+0x30/0x44 [ 4557.360653] [c00000042844b5f0] [c0000000001a0140] lockdep_rcu_suspicious+0x140/0x190 [ 4557.360659] [c00000042844b670] [c000000000140ee8] __might_sleep+0x278/0x2d0 [ 4557.360663] [c00000042844b6f0] [c000000000a55794] mutex_lock_nested+0x74/0x5b0 [ 4557.360669] [c00000042844b7f0] [c00000000026f67c] perf_event_ctx_lock_nested+0x15c/0x370 [ 4557.360674] [c00000042844b880] [c0000000002714b8] perf_event_disable+0x28/0xe0 [ 4557.360679] [c00000042844b8b0] [c000000000a602a4] hw_breakpoint_handler+0x204/0x310 [ 4557.360684] [c00000042844b950] [c000000000a65124] notifier_call_chain.constprop.6+0xa4/0x1d0 [ 4557.360689] [c00000042844b9e0] [c000000000a654b8] notify_die+0xb8/0x1c0 [ 4557.360693] [c00000042844ba40] [c0000000000181c4] do_break+0x54/0x100 [ 4557.360698] [c00000042844baf0] [c0000000000095a0] handle_dabr_fault+0x14/0x48 [ 4557.360704] --- Exception: 300 at SyS_getresgid+0xb0/0x170 [ 4557.360704] LR = SyS_getresgid+0x88/0x170 [ 4557.360709] [c00000042844be30] [c00000000000a188] system_call+0x38/0xb4 [ 4557.360713] BUG: sleeping function called from invalid context at kernel/mutex.c:576 [ 4557.360716] in_atomic(): 1, irqs_disabled(): 1, pid: 138777, name: trinity-c0 [ 4557.360720] INFO: lockdep is turned off. [ 4557.360722] irq event stamp: 9356 [ 4557.360725] hardirqs last enabled at (9355): [] __mutex_unlock_slowpath+0x120/0x2a0 [ 4557.360730] hardirqs last disabled at (9356): [] data_access_common+0x11c/0x180 [ 4557.360735] softirqs last enabled at (8688): [] bdi_wakeup_thread_delayed+0x8c/0xb0 [ 4557.360742] softirqs last disabled at (8684): [] _raw_spin_lock_bh+0x2c/0xd0 [ 4557.360748] CPU: 0 PID: 138777 Comm: trinity-c0 Tainted: G W ------------ 3.10.0-379.el7.ppc64le.debug #1 [ 4557.360751] Call Trace: [ 4557.360754] [c00000042844b590] [c000000000019e18] show_stack+0x88/0x390 (unreliable) [ 4557.360760] [c00000042844b650] [c000000000a7ab04] dump_stack+0x30/0x44 [ 4557.360764] [c00000042844b670] [c000000000140e34] __might_sleep+0x1c4/0x2d0 [ 4557.360769] [c00000042844b6f0] [c000000000a55794] mutex_lock_nested+0x74/0x5b0 [ 4557.360774] [c00000042844b7f0] [c00000000026f67c] perf_event_ctx_lock_nested+0x15c/0x370 [ 4557.360779] [c00000042844b880] [c0000000002714b8] perf_event_disable+0x28/0xe0 [ 4557.360784] [c00000042844b8b0] [c000000000a602a4] hw_breakpoint_handler+0x204/0x310 [ 4557.360789] [c00000042844b950] [c000000000a65124] notifier_call_chain.constprop.6+0xa4/0x1d0 [ 4557.360793] [c00000042844b9e0] [c000000000a654b8] notify_die+0xb8/0x1c0 [ 4557.360798] [c00000042844ba40] [c0000000000181c4] do_break+0x54/0x100 [ 4557.360803] [c00000042844baf0] [c0000000000095a0] handle_dabr_fault+0x14/0x48 [ 4557.360809] --- Exception: 300 at SyS_getresgid+0xb0/0x170 [ 4557.360809] LR = SyS_getresgid+0x88/0x170 [ 4557.360814] [c00000042844be30] [c00000000000a188] system_call+0x38/0xb4