From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751110AbeAPCEF (ORCPT + 1 other); Mon, 15 Jan 2018 21:04:05 -0500 Received: from mail-wm0-f68.google.com ([74.125.82.68]:44082 "EHLO mail-wm0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750740AbeAPCED (ORCPT ); Mon, 15 Jan 2018 21:04:03 -0500 X-Google-Smtp-Source: ACJfBou8Ai0F4zOXFNTofOMYcQPtW/8LLI1xnsxZYDy41bK9OtbmaWgcBZzeQ4MeZy7y4GepK4XJ9w== Date: Tue, 16 Jan 2018 03:03:59 +0100 From: Ingo Molnar To: Anna-Maria Gleixner Cc: LKML , Thomas Gleixner , Peter Zijlstra , Ingo Molnar , keescook@chromium.org, Christoph Hellwig , John Stultz Subject: Re: [PATCH v4 00/36] hrtimer: Provide softirq context hrtimers Message-ID: <20180116020359.w3qjhbhrkmjyzolu@gmail.com> References: <20171221104205.7269-1-anna-maria@linutronix.de> <20180116013917.qkm3codqbugskgwk@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180116013917.qkm3codqbugskgwk@gmail.com> User-Agent: NeoMutt/20170609 (1.8.3) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: * Ingo Molnar wrote: > No serious changes intended, but please double check the end result once I've > pushed it out after local testing. I made the fix below for the !NO_HZ_COMMON || !HIGH_RES_TIMERS case, which would fail with a build failure due to non-available __hrtimer_next_event_base(). These functions won't get called, so the fix I picked was to make the code unconditionally available. That's the model I'd encourage going forward: we should reduce the !hrtimer and hrtimer differences, in fact we should eventually implement !hrtimers as a compatibility mode of the hrtimers code, with no separate #ifdeffery. Thanks, Ingo diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c index 5bd0fe9b6402..ba4674e9adc2 100644 --- a/kernel/time/hrtimer.c +++ b/kernel/time/hrtimer.c @@ -487,7 +487,6 @@ __next_base(struct hrtimer_cpu_base *cpu_base, unsigned int *active) #define for_each_active_base(base, cpu_base, active) \ while ((base = __next_base((cpu_base), &(active)))) -#if defined(CONFIG_NO_HZ_COMMON) || defined(CONFIG_HIGH_RES_TIMERS) static ktime_t __hrtimer_next_event_base(struct hrtimer_cpu_base *cpu_base, unsigned int active, ktime_t expires_next) @@ -539,7 +538,6 @@ static ktime_t __hrtimer_get_next_event(struct hrtimer_cpu_base *cpu_base, return expires_next; } -#endif static inline ktime_t hrtimer_update_base(struct hrtimer_cpu_base *base) {