Received: by 2002:a05:6358:1087:b0:cb:c9d3:cd90 with SMTP id j7csp418566rwi; Wed, 26 Oct 2022 02:37:56 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5jtpy35fSW9Dxj0VjnT0Ebd8dbcJb8RLTvf+kmCswzk4O9v2JgN1Zd3EqGiQKg8fmdxaWE X-Received: by 2002:a17:90b:3ec1:b0:213:2f34:29ef with SMTP id rm1-20020a17090b3ec100b002132f3429efmr3207173pjb.123.1666777076211; Wed, 26 Oct 2022 02:37:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666777076; cv=none; d=google.com; s=arc-20160816; b=SlkIgUsf24MSz+CAeldDO2y5inPs/hkl3YelaXhBXJiXHjGxsstU5Yc/0/lKDnksFp hIy+p6KuLgoLqbP2KKvJRgO+PM4CI+Qz1uGBL17JQ+ZaC2zTB3XcYiK3+sQAdRAj4+a9 wW3RjgfMJxI4R4lJQTHKcpWNkm0kydxngRlwYefo4I/MvYWuS0sx/M73BHxdAFhCQWLR BwMvj4IDr9ckiYWHhZmhyqx+DkqXrLm9mrURAnRExMurgR1aoZAgldIGg5fF5oKQuXVD vREPkn7/BL4QZ9FO5cxs4e8kTPbvmJm8PM1ZFkc46peRSbMp4f4B5D8NENyiaXr28RcN YvIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=HlkJW41yy8JydHMoxFffBZZ4r7pmHiWfISstsBe0/bc=; b=l0kT2Jt3crr9R9onQCdt6RruJUoAydgOrD1C6Y8eUFVTIJ/308b+osho0Ge5aYwRtF hkfZh33ZynogrFFclBIWIorOF1+z0G9q1W3SojZZ2N7OJsIRmsChCSq1ZrqP/xV64Mh+ l9B75Og/oRupIPZTrHs21ElAC6rpcV30iS67eGTxMZ2DoOwCb0tWrr9OFQBPKyhweXzk woacQz/EqWPl4Fk8zyXvgjfO9u0ackOkcFb4s8AJ2In/D4jCWPwu6w5OOP5fiHTmTHzr iAT6YGO5UjeY+KXstwRBlW1IfiYssLmpiphI0Euw0ov/4l7mNWEZr1nRb0PDmebuY6uA NehQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="OCCBUq/D"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id me4-20020a17090b17c400b0020b27227d6dsi2475410pjb.6.2022.10.26.02.37.44; Wed, 26 Oct 2022 02:37:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="OCCBUq/D"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232946AbiJZJdN (ORCPT + 99 others); Wed, 26 Oct 2022 05:33:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40070 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231164AbiJZJdK (ORCPT ); Wed, 26 Oct 2022 05:33:10 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 17B0BB2773; Wed, 26 Oct 2022 02:33:10 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id C3DD2B8212F; Wed, 26 Oct 2022 09:33:08 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 22DC0C433C1; Wed, 26 Oct 2022 09:33:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1666776787; bh=BofbRtfIxoJoenlFoJc1d0N551Sv7Cz7H1y1Amq+Qo0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=OCCBUq/Df0dDEVCTbMgVIdLVL865mdtl9QRgpR4rlTZFRIaHQOucswtXZaGFckhTZ Qu0SI6rb2kmQcRhOlDmCyoFSgPvdgxVdThEBpvBe412LTeVjEtPJJvuEv+qDyrRGfZ jdroKRhc9D8yHZCm1fx/T2wy2jX182MdYWx5k5TKl5wYDbFugnWiEZfQKptprlA5Ok mzPg9Frd2Eh+IxXGwkVJzbP35M1HM4IL9C9qHCHXJYUfHuhJyd6KDHS+ySzhrsGNIR e4XJUExG0QSoS0gaYOOQBL9q+S2ZhCdqjGZOf4B21cH2eOTg2XdP+85ihdpHl5uwis JtOWS76re+WsQ== Date: Wed, 26 Oct 2022 11:33:04 +0200 From: Frederic Weisbecker To: Anna-Maria Behnsen Cc: linux-kernel@vger.kernel.org, Peter Zijlstra , John Stultz , Eric Dumazet , Thomas Gleixner , "Rafael J. Wysocki" , linux-pm@vger.kernel.org, Arjan van de Ven , "Paul E. McKenney" , Frederic Weisbecker , Rik van Riel Subject: Re: [PATCH v3 03/17] timer: Move store of next event into __next_timer_interrupt() Message-ID: <20221026093304.GA1327339@lothringen> References: <20221025135850.51044-1-anna-maria@linutronix.de> <20221025135850.51044-4-anna-maria@linutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20221025135850.51044-4-anna-maria@linutronix.de> X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Oct 25, 2022 at 03:58:36PM +0200, Anna-Maria Behnsen wrote: > Both call sides of __next_timer_interrupt() store the return value directly > in base->next_expiry. Move the store into __next_timer_interrupt(). > > No functional change. > > Signed-off-by: Anna-Maria Behnsen > Reviewed-by: Thomas Gleixner > --- > kernel/time/timer.c | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > > diff --git a/kernel/time/timer.c b/kernel/time/timer.c > index 717fcb9fb14a..7695c733dfa5 100644 > --- a/kernel/time/timer.c > +++ b/kernel/time/timer.c > @@ -1571,8 +1571,10 @@ static int next_pending_bucket(struct timer_base *base, unsigned offset, > /* > * Search the first expiring timer in the various clock levels. Caller must > * hold base->lock. > + * > + * Store next expiry time in base->next_expiry. > */ > -static unsigned long __next_timer_interrupt(struct timer_base *base) > +static void __next_timer_interrupt(struct timer_base *base) > { > unsigned long clk, next, adj; > unsigned lvl, offset = 0; > @@ -1638,10 +1640,11 @@ static unsigned long __next_timer_interrupt(struct timer_base *base) > clk += adj; > } > > + base->next_expiry = next; > base->next_expiry_recalc = false; In that case, maybe rename that function as next_expiry_recalc() to make its purpose clearer? Thanks! > base->timers_pending = !(next == base->clk + NEXT_TIMER_MAX_DELTA); > > - return next; > + return; > } > > #ifdef CONFIG_NO_HZ_COMMON > @@ -1701,7 +1704,7 @@ u64 get_next_timer_interrupt(unsigned long basej, u64 basem) > > raw_spin_lock(&base->lock); > if (base->next_expiry_recalc) > - base->next_expiry = __next_timer_interrupt(base); > + __next_timer_interrupt(base); > nextevt = base->next_expiry; > > /* > @@ -1784,7 +1787,7 @@ static inline void __run_timers(struct timer_base *base) > WARN_ON_ONCE(!levels && !base->next_expiry_recalc > && base->timers_pending); > base->clk++; > - base->next_expiry = __next_timer_interrupt(base); > + __next_timer_interrupt(base); > > while (levels--) > expire_timers(base, heads + levels); > -- > 2.30.2 >