From patchwork Thu Apr 2 08:29:17 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Zijlstra X-Patchwork-Id: 6145231 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id C04F79F350 for ; Thu, 2 Apr 2015 08:32:01 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id BECCC20328 for ; Thu, 2 Apr 2015 08:32:00 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id EA7D620306 for ; Thu, 2 Apr 2015 08:31:59 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1YdaVI-00033t-MH; Thu, 02 Apr 2015 08:29:32 +0000 Received: from casper.infradead.org ([2001:770:15f::2]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1YdaVE-00032J-Qd for linux-arm-kernel@bombadil.infradead.org; Thu, 02 Apr 2015 08:29:29 +0000 Received: from 178-85-85-44.dynamic.upc.nl ([178.85.85.44] helo=twins) by casper.infradead.org with esmtpsa (Exim 4.80.1 #2 (Red Hat Linux)) id 1YdaVA-00026G-Lc; Thu, 02 Apr 2015 08:29:24 +0000 Received: by twins (Postfix, from userid 1000) id 739C3100AE5BE; Thu, 2 Apr 2015 10:29:17 +0200 (CEST) Date: Thu, 2 Apr 2015 10:29:17 +0200 From: Peter Zijlstra To: "Rafael J. Wysocki" Subject: Re: Build regression in next-20150331 Message-ID: <20150402082917.GS23123@twins.programming.kicks-ass.net> References: <2720045.6sPXjyyvfF@vostro.rjw.lan> <2863807.lxHPvZ2AsE@vostro.rjw.lan> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <2863807.lxHPvZ2AsE@vostro.rjw.lan> User-Agent: Mutt/1.5.21 (2012-12-30) Cc: Kevin Hilman , rafael.j.wysocki@intel.com, Tyler Baker , "linux-kernel@vger.kernel.org" , John Stultz , Thomas Gleixner , linux-arm-kernel X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On Wed, Apr 01, 2015 at 11:46:10PM +0200, Rafael J. Wysocki wrote: > > > --- > > > kernel/time/tick-internal.h | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > Index: linux-pm/kernel/time/tick-internal.h > > > =================================================================== > > > --- linux-pm.orig/kernel/time/tick-internal.h > > > +++ linux-pm/kernel/time/tick-internal.h > > > @@ -110,7 +110,9 @@ static inline int tick_broadcast_update_ > > > /* Set the periodic handler in non broadcast mode */ > > > static inline void tick_set_periodic_handler(struct clock_event_device *dev, int broadcast) > > > { > > > +#ifdef CONFIG_GENERIC_CLOCKEVENTS > > > dev->event_handler = tick_handle_periodic; > > > +#endif > > > } > > > #endif /* !BROADCAST */ > Peter, do you think the above is acceptable or do I need to do anything more > sophisticated to fix this? [The alternative would be probably to prepare an > empty definition of tick_handle_periodic() for CONFIG_GENERIC_CLOCKEVENTS and > move the definition of struct clock_event_device from under that Kconfig > option.] Does not something like the below make more sense? The entire broadcast thing doesn't make sense if we don't have generic_clockevents. Should we wrap more in generic_clockevents there? --- kernel/time/tick-internal.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel/time/tick-internal.h b/kernel/time/tick-internal.h index 2a1563a..5569e65 100644 --- a/kernel/time/tick-internal.h +++ b/kernel/time/tick-internal.h @@ -81,6 +81,7 @@ static inline int tick_check_oneshot_change(int allow_nohz) { return 0; } #endif /* !TICK_ONESHOT */ /* Broadcasting support */ +#ifdef CONFIG_GENERIC_CLOCKEVENTS #ifdef CONFIG_GENERIC_CLOCKEVENTS_BROADCAST extern int tick_device_uses_broadcast(struct clock_event_device *dev, int cpu); extern void tick_install_broadcast_device(struct clock_event_device *dev); @@ -114,6 +115,7 @@ static inline void tick_set_periodic_handler(struct clock_event_device *dev, int dev->event_handler = tick_handle_periodic; } #endif /* !BROADCAST */ +#endif /* GENERIC */ /* Functions related to oneshot broadcasting */ #if defined(CONFIG_GENERIC_CLOCKEVENTS_BROADCAST) && defined(CONFIG_TICK_ONESHOT)