From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=BAYES_00,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DCB07C4361A for ; Thu, 3 Dec 2020 14:59:29 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 835FB206EC for ; Thu, 3 Dec 2020 14:59:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730961AbgLCO7N (ORCPT ); Thu, 3 Dec 2020 09:59:13 -0500 Received: from mail.kernel.org ([198.145.29.99]:52432 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727452AbgLCO7M (ORCPT ); Thu, 3 Dec 2020 09:59:12 -0500 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 9AEF2206D6; Thu, 3 Dec 2020 14:58:31 +0000 (UTC) Received: from disco-boy.misterjones.org ([51.254.78.96] helo=www.loen.fr) by disco-boy.misterjones.org with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94) (envelope-from ) id 1kkq3v-00FhMk-F6; Thu, 03 Dec 2020 14:58:27 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Thu, 03 Dec 2020 14:58:27 +0000 From: Marc Zyngier To: Keqian Zhu Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org, Steven Price , Andrew Jones , Catalin Marinas , Will Deacon , James Morse , Suzuki K Poulose , wanghaibin.wang@huawei.com Subject: Re: [PATCH v2 1/2] clocksource: arm_arch_timer: Use stable count reader in erratum sne In-Reply-To: <20200818032814.15968-2-zhukeqian1@huawei.com> References: <20200818032814.15968-1-zhukeqian1@huawei.com> <20200818032814.15968-2-zhukeqian1@huawei.com> User-Agent: Roundcube Webmail/1.4.9 Message-ID: X-Sender: maz@kernel.org X-SA-Exim-Connect-IP: 51.254.78.96 X-SA-Exim-Rcpt-To: zhukeqian1@huawei.com, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org, steven.price@arm.com, drjones@redhat.com, catalin.marinas@arm.com, will@kernel.org, james.morse@arm.com, suzuki.poulose@arm.com, wanghaibin.wang@huawei.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2020-08-18 04:28, Keqian Zhu wrote: > In commit 0ea415390cd3 ("clocksource/arm_arch_timer: Use > arch_timer_read_counter > to access stable counters"), we separate stable and normal count reader > to omit > unnecessary overhead on systems that have no timer erratum. > > However, in erratum_set_next_event_tval_generic(), count reader becomes > normal > reader. This converts it to stable reader. > > Fixes: 0ea415390cd3 ("clocksource/arm_arch_timer: Use > arch_timer_read_counter to access stable counters") On a single line. > Signed-off-by: Keqian Zhu > --- > drivers/clocksource/arm_arch_timer.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/clocksource/arm_arch_timer.c > b/drivers/clocksource/arm_arch_timer.c > index 6c3e841..777d38c 100644 > --- a/drivers/clocksource/arm_arch_timer.c > +++ b/drivers/clocksource/arm_arch_timer.c > @@ -396,10 +396,10 @@ static void > erratum_set_next_event_tval_generic(const int access, unsigned long > ctrl &= ~ARCH_TIMER_CTRL_IT_MASK; > > if (access == ARCH_TIMER_PHYS_ACCESS) { > - cval = evt + arch_counter_get_cntpct(); > + cval = evt + arch_counter_get_cntpct_stable(); > write_sysreg(cval, cntp_cval_el0); > } else { > - cval = evt + arch_counter_get_cntvct(); > + cval = evt + arch_counter_get_cntvct_stable(); > write_sysreg(cval, cntv_cval_el0); > } With that fixed: Acked-by: Marc Zyngier This should go via the clocksource tree. Thanks, M. -- Jazz is not dead. It just smells funny...