From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754228AbdEES4M (ORCPT ); Fri, 5 May 2017 14:56:12 -0400 Received: from mx1.redhat.com ([209.132.183.28]:52938 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751535AbdEES4J (ORCPT ); Fri, 5 May 2017 14:56:09 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com E39CE7AE81 Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=drjones@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com E39CE7AE81 Date: Fri, 5 May 2017 20:55:50 +0200 From: Andrew Jones To: paul.gortmaker@windriver.com Cc: linux-kernel@vger.kernel.org, linux-next@vger.kernel.org, sfr@canb.auug.org.au, tglx@linutronix.de Subject: Re: linux-next: Tree for Apr 24 Message-ID: <20170505185550.xyhndktiw5gfbqix@hawk.localdomain> Reply-To: CAP=VYLrEVMbEnnLkOvjmJ5pw2YO0Cwbdq2oF_LJexeHJqhW=jg@mail.gmail.com MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit User-Agent: Mutt/1.6.0.1 (2016-04-01) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Fri, 05 May 2017 18:55:55 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Apr 24, 2017 at 11:44:13AM -0400, Paul Gortmaker wrote: > There are also some new fails around kernel/events/core.c in arm32/arm64 > > include/linux/jump_label.h: In function > ‘static_key_disable_cpuslocked.constprop.66’: > include/linux/jump_label.h:260:20: error: inlining failed in call to > always_inline ‘static_key_disable_cpuslocked.constprop.66’: recursive > inlining > static inline void static_key_disable_cpuslocked(struct static_key *key) > ^ > > http://kisskb.ellerman.id.au/kisskb/buildresult/13011884/ > http://kisskb.ellerman.id.au/kisskb/buildresult/13011947/ > ...and others. > > A mindless automated bisect run came back with this: > > 924726b2b5e5000dfb8eb6032651baed1b1bdc6c is the first bad commit > commit 924726b2b5e5000dfb8eb6032651baed1b1bdc6c > Author: Thomas Gleixner > Date: Sun Apr 23 12:13:09 2017 +0200 > > perf: Cure hotplug lock ordering issues > > I gave tglx and peterz a heads up on irc. > Sorry if this is a repeat, but I'm not sure if this has been resolved yet, as I'm not on any of the mailing lists where it would be posted and google isn't revealing anything besides this mail I'm replying to (please keep me on CC in replies, as I'm not on the lists). I bumped into a problem which bisecting led to this same commit. And, it turns out the problem is the same one pointed out above, i.e. the recursive inlining report. The following patch fixes the issue. Thanks, drew >>From 0a8d642d17c6a93e927435ce9b6d2eaaeb19263b Mon Sep 17 00:00:00 2001 From: Andrew Jones Date: Fri, 5 May 2017 19:54:35 +0200 Subject: [PATCH] jump_label: fix stack overflow Fix a typo that leads to static_key_disable_cpuslocked infinitely recursing. This was found when the PMU kvm-unit-tests test for ARM crashed the host and bisection lead to 924726b2b5e5 "perf: Cure hotplug lock ordering issues". That commit was just the victim, the culprit commit is identified below in 'Fixes'. Fixes: fc932a0477d0 "jump_label: Provide static_key_[disable|/slow_dec]_cpuslocked()" Signed-off-by: Andrew Jones --- include/linux/jump_label.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/jump_label.h b/include/linux/jump_label.h index 6e3ebf2a39ede..bedd55849c2e3 100644 --- a/include/linux/jump_label.h +++ b/include/linux/jump_label.h @@ -259,7 +259,7 @@ static inline void static_key_disable(struct static_key *key) static inline void static_key_disable_cpuslocked(struct static_key *key) { - static_key_disable_cpuslocked(key); + static_key_disable(key); } #define STATIC_KEY_INIT_TRUE { .enabled = ATOMIC_INIT(1) } -- 2.7.4