Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp3447792pxt; Tue, 10 Aug 2021 04:00:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwTRZ2zSGp6gcceljc0UHEkI2+h4wHfBcmhBSsWnVXKV5hKMgVZQmB3DTF+U2ubuTVWEQtV X-Received: by 2002:a05:6e02:154b:: with SMTP id j11mr17502ilu.96.1628593228176; Tue, 10 Aug 2021 04:00:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628593228; cv=none; d=google.com; s=arc-20160816; b=A2BRfzES/SRsdlF+DsVu8jlBY2zvMpC04vHi+tpg5qSf9ZohukDa/58ZGqmzf3Vo/s dWajG4uzyeACkyWJ8k5c3aMBzyRLaiINRCvd9Gcru/D7OjNmPb/E3ENG6KhouTc1X6VA sEvrocFaerNGJvTT3bFUX9rSwr/DzvnCk5jAP/vwRHaRrr/tdp8+F99qPXNTcc4rex77 tMPy9euIFU1fDw23cbaYXpDSl1SVeWpAFN9wchjOE8ecthXQ1umZdTXsV2/qFVXDU9wE X34jxxxqjk6T7TXXVrxaBchMxeeAp3nWwmHVdScNie5HRRyU+JcNnA8q6s5Q8lp+G8QW gf+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:user-agent:references:in-reply-to :subject:cc:to:from:message-id:date; bh=RbRmvR7lr4W6/Vwhi9oiMwH96i0kKTwTkjJd5GR8aBk=; b=LF+dJLbfwGUWUQH3Touy6T02BvTsgA4KFfKTo0TNr/c+eWOi13IMyegNbQFJS0yru2 agRX7leVF7nq1NEtjJrktgcxjfR1GByVyyc2JS70lRPtg1YyrDgyDo5+xSiJbITpnyMy CiDX9HmI3QzzATzq8LWXkwGJ93dJbguQntPqTdOn6iPZvZA+yJgm6oA2HpI2Wa9ZuzpN Q3zymVeZybk41Xur4IgFfS/WmMfcJHqG5KKqT1UdMO6yrLHd85tgEtotsMEcdwRzRT5h y+klGFs6H44zkAH6Cg+BB3w853U2syDSUAsIpionYCe+nsIIrFFg/znhU8L/fOPGbumZ hCFA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 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 vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b2si3761926jat.76.2021.08.10.04.00.15; Tue, 10 Aug 2021 04:00:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 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 S237999AbhHJH7j (ORCPT + 99 others); Tue, 10 Aug 2021 03:59:39 -0400 Received: from mail.kernel.org ([198.145.29.99]:46954 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237965AbhHJH71 (ORCPT ); Tue, 10 Aug 2021 03:59:27 -0400 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 5492060F11; Tue, 10 Aug 2021 07:59:05 +0000 (UTC) Received: from sofa.misterjones.org ([185.219.108.64] helo=why.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1mDMf9-003zxb-HC; Tue, 10 Aug 2021 08:59:03 +0100 Date: Tue, 10 Aug 2021 08:59:03 +0100 Message-ID: <87h7fxbuig.wl-maz@kernel.org> From: Marc Zyngier To: Oliver Upton Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Mark Rutland , Daniel Lezcano , Thomas Gleixner , Peter Shier , Raghavendra Rao Ananta , Ricardo Koller , Will Deacon , Catalin Marinas , Linus Walleij , kernel-team@android.com Subject: Re: [PATCH 13/13] arm64: Add CNT{P,V}CTSS_EL0 alternatives to cnt{p,v}ct_el0 In-Reply-To: References: <20210809152651.2297337-1-maz@kernel.org> <20210809152651.2297337-14-maz@kernel.org> <87im0ebi9m.wl-maz@kernel.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/27.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: oupton@google.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, mark.rutland@arm.com, daniel.lezcano@linaro.org, tglx@linutronix.de, pshier@google.com, rananta@google.com, ricarkol@google.com, will@kernel.org, catalin.marinas@arm.com, linus.walleij@linaro.org, kernel-team@android.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 Mon, 09 Aug 2021 19:17:38 +0100, Oliver Upton wrote: > > On Mon, Aug 9, 2021 at 11:11 AM Marc Zyngier wrote: > > > > On Mon, 09 Aug 2021 17:42:00 +0100, > > Oliver Upton wrote: > > > > > > On Mon, Aug 9, 2021 at 8:48 AM Marc Zyngier wrote: > > > > > > > > CNTPCTSS_EL0 and CNTVCTSS_EL0 are alternatives to the usual > > > > CNTPCT_EL0 and CNTVCT_EL0 that do not require a previous ISB > > > > to be synchronised (SS stands for Self-Synchronising). > > > > > > > > Use the ARM64_HAS_ECV capability to control alternative sequences > > > > that switch to these low(er)-cost primitives. Note that the > > > > counter access in the VDSO is for now left alone until we decide > > > > whether we want to allow this. > > > > > > What remains to be figured out before we add this to the vDSO (and > > > presumably advertise to userspace through some standard convention)? > > > > We need to understand what breaks if we runtime-patch the VDSO just > > like we do with the rest of the kernel. To start with, the debug > > version of the shared object is not the same as the object presented > > to the process. Maybe that's not a problem, but I would tend to err on > > the side of caution. > > I would too, but there sadly are instances of Linux patching *user* > memory already (go look at how KVM/x86 handles the VMCALL/VMMCALL > instruction). But yes, I would much prefer the debug vDSO correspond > to the actual instructions. Urghhh... This reminds me of https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/commit/?h=arm/netwinder&id=72797818a31d37a7ec28db659afcab0a56d47968 which I never tried to get merged for this exact reason. I'd rather not replicate this sort of braindamage^Wthing if I can avoid it. Thanks, M. -- Without deviation from the norm, progress is not possible.