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=-8.3 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 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 663BAC433E0 for ; Mon, 18 May 2020 17:21:05 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 26537204EC for ; Mon, 18 May 2020 17:21:05 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 26537204EC Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id B0D59900003; Mon, 18 May 2020 13:21:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ABD95900002; Mon, 18 May 2020 13:21:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9D2BA900003; Mon, 18 May 2020 13:21:04 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0006.hostedemail.com [216.40.44.6]) by kanga.kvack.org (Postfix) with ESMTP id 7DA89900002 for ; Mon, 18 May 2020 13:21:04 -0400 (EDT) Received: from smtpin23.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 2292A181AEF10 for ; Mon, 18 May 2020 17:21:04 +0000 (UTC) X-FDA: 76830505248.23.songs12_437b2d4231944 X-HE-Tag: songs12_437b2d4231944 X-Filterd-Recvd-Size: 4012 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf21.hostedemail.com (Postfix) with ESMTP for ; Mon, 18 May 2020 17:21:03 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DBD96106F; Mon, 18 May 2020 10:21:02 -0700 (PDT) Received: from gaia (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 5BD183F305; Mon, 18 May 2020 10:21:01 -0700 (PDT) Date: Mon, 18 May 2020 18:20:55 +0100 From: Catalin Marinas To: Will Deacon Cc: Vladimir Murzin , linux-arch@vger.kernel.org, Szabolcs Nagy , Kevin Brodsky , linux-mm@kvack.org, Andrey Konovalov , Vincenzo Frascino , Peter Collingbourne , Dave P Martin , linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v4 24/26] arm64: mte: Introduce early param to disable MTE support Message-ID: <20200518172054.GL9862@gaia> References: <20200515171612.1020-1-catalin.marinas@arm.com> <20200515171612.1020-25-catalin.marinas@arm.com> <20200518113103.GA32394@willie-the-truck> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200518113103.GA32394@willie-the-truck> User-Agent: Mutt/1.10.1 (2018-07-13) X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon, May 18, 2020 at 12:31:03PM +0100, Will Deacon wrote: > On Mon, May 18, 2020 at 12:26:30PM +0100, Vladimir Murzin wrote: > > On 5/15/20 6:16 PM, Catalin Marinas wrote: > > > For performance analysis it may be desirable to disable MTE altogether > > > via an early param. Introduce arm64.mte_disable and, if true, filter out > > > the sanitised ID_AA64PFR1_EL1.MTE field to avoid exposing the HWCAP to > > > user. > > > > > > Signed-off-by: Catalin Marinas > > > Cc: Will Deacon > > > --- > > > > > > Notes: > > > New in v4. > > > > > > Documentation/admin-guide/kernel-parameters.txt | 4 ++++ > > > arch/arm64/kernel/cpufeature.c | 11 +++++++++++ > > > 2 files changed, 15 insertions(+) > > > > > > diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt > > > index f2a93c8679e8..7436e7462b85 100644 > > > --- a/Documentation/admin-guide/kernel-parameters.txt > > > +++ b/Documentation/admin-guide/kernel-parameters.txt > > > @@ -373,6 +373,10 @@ > > > arcrimi= [HW,NET] ARCnet - "RIM I" (entirely mem-mapped) cards > > > Format: ,, > > > > > > + arm64.mte_disable= > > > + [ARM64] Disable Linux support for the Memory > > > + Tagging Extension (both user and in-kernel). > > > + > > > > Should it really to take parameter (on/off/true/false)? It may lead to expectation > > that arm64.mte_disable=false should enable MT and, yes, double negatives make it > > look ugly, so if we do need parameter, can it be arm64.mte=on/off/true/false? > > I don't think "performance analysis" is a good justification for this > parameter tbh. We don't tend to add these options for other architectural > features, and I don't see why MTE is any different in this regard. There is an expectation of performance impact with MTE enabled, especially if it's running in synchronous mode. For the in-kernel MTE, we could add a parameter which sets sync vs async at boot time rather than a big disable knob. It won't affect user space however. The other 'justification' is if your hardware has weird unexpected behaviour but I'd like this handled via errata workarounds. I'll let the people who asked for this to chip in ;). I agree with you that we rarely add these (and I rejected a similar option a few weeks ago on the AMU patchset). -- Catalin