Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp1342582pxf; Fri, 12 Mar 2021 07:31:26 -0800 (PST) X-Google-Smtp-Source: ABdhPJzruKlqPOQCcmSiA7oQR5lJfNDICU0OG1r5jrWlqdRi2c2Yc+vKwkZFjqdB+6/CCqUB4mBY X-Received: by 2002:a17:906:da0e:: with SMTP id fi14mr9453481ejb.188.1615563086002; Fri, 12 Mar 2021 07:31:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1615563085; cv=none; d=google.com; s=arc-20160816; b=Q/zuEZF+WNeUKqZJoSnkz0i6zGls0g1gsBeXOEFCzVA+aujFwh9nemhmvk7WYiEc1G DvnneqdHaq1WUMjgF3bZ16d83FQ845jSjnZ+adnqc90GSeN4eaWqKu0OtJvhQ4RxfWjh 5SWvRCv0vdspfT+IhG/l785fVijAmhS1D9Vpyfrmtend4GzDSIRhrOdepwLzUQvW/Q6M kL6NXos0Hh3BQEImvr7QKtOCXnERsjd3asj9vVHiqRWAicDevCrM2DH66kh6k2Sqa9Pn qfU2g3geVxJv2l3PoFlxQUx6DTIs2au0sVPKuw1Jk8Kkf2luizJN6Ul6TsdZPScrAaP2 +O1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=chGfDjI2axUnQCsAVaBlaUVUOleFZ+hrs2yvxzqkHr0=; b=OFCaz1z2OGr2n8A5CmUgCWVWmVdk5gyCdCaSNygkkQvlglUia9kYz55H+eR+dozdnK fw1OQYyXpnULPZI5i4TQWxlK+zqk7sz+c/lyD5CBlW0tN0a5sT42FOVahBan97BU6c7d yjWsM4fTuQlYBNma6lhU12m7q4wbS+44e5frDHQtJ1zz2m8m6MUy+/GPUE339DgU8xPt BM9cdnPl6aJsrhRs6MhoYfLJz7jyl6c88NDtDE+Zf2q9rg0JNH75qBzvxcaXSKi7dg6I cPatl9WbVsKXQILKycekkkIuq4ytcF6qK/TPdZiD+BaBAQWG1K2McwGWRiVAOEwhhVvI 4x1w== 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=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k9si4259557eje.184.2021.03.12.07.31.03; Fri, 12 Mar 2021 07:31:25 -0800 (PST) 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=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232054AbhCLPaG (ORCPT + 99 others); Fri, 12 Mar 2021 10:30:06 -0500 Received: from mail.kernel.org ([198.145.29.99]:52980 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231883AbhCLP3d (ORCPT ); Fri, 12 Mar 2021 10:29:33 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id B769664FEE; Fri, 12 Mar 2021 15:29:30 +0000 (UTC) Date: Fri, 12 Mar 2021 15:29:28 +0000 From: Catalin Marinas To: Vincenzo Frascino Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com, Andrew Morton , Will Deacon , Dmitry Vyukov , Andrey Ryabinin , Alexander Potapenko , Marco Elver , Evgenii Stepanov , Branislav Rankov , Andrey Konovalov , Lorenzo Pieralisi Subject: Re: [PATCH v15 5/8] arm64: mte: Enable TCO in functions that can read beyond buffer limits Message-ID: <20210312152927.GD24210@arm.com> References: <20210312142210.21326-1-vincenzo.frascino@arm.com> <20210312142210.21326-6-vincenzo.frascino@arm.com> <20210312151259.GB24210@arm.com> <31b7a388-4c57-cb25-2d30-da7c37e2b4d6@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <31b7a388-4c57-cb25-2d30-da7c37e2b4d6@arm.com> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Mar 12, 2021 at 03:23:44PM +0000, Vincenzo Frascino wrote: > On 3/12/21 3:13 PM, Catalin Marinas wrote: > > On Fri, Mar 12, 2021 at 02:22:07PM +0000, Vincenzo Frascino wrote: > >> diff --git a/arch/arm64/include/asm/mte.h b/arch/arm64/include/asm/mte.h > >> index 9b557a457f24..8603c6636a7d 100644 > >> --- a/arch/arm64/include/asm/mte.h > >> +++ b/arch/arm64/include/asm/mte.h > >> @@ -90,5 +90,20 @@ static inline void mte_assign_mem_tag_range(void *addr, size_t size) > >> > >> #endif /* CONFIG_ARM64_MTE */ > >> > >> +#ifdef CONFIG_KASAN_HW_TAGS > >> +/* Whether the MTE asynchronous mode is enabled. */ > >> +DECLARE_STATIC_KEY_FALSE(mte_async_mode); > >> + > >> +static inline bool system_uses_mte_async_mode(void) > >> +{ > >> + return static_branch_unlikely(&mte_async_mode); > >> +} > >> +#else > >> +static inline bool system_uses_mte_async_mode(void) > >> +{ > >> + return false; > >> +} > >> +#endif /* CONFIG_KASAN_HW_TAGS */ > > > > You can write this with fewer lines: > > > > DECLARE_STATIC_KEY_FALSE(mte_async_mode); > > > > static inline bool system_uses_mte_async_mode(void) > > { > > return IS_ENABLED(CONFIG_KASAN_HW_TAGS) && > > static_branch_unlikely(&mte_async_mode); > > } > > > > The compiler will ensure that mte_async_mode is not referred when > > !CONFIG_KASAN_HW_TAGS and therefore doesn't need to be defined. > > Yes, I agree, but I introduce "#ifdef CONFIG_KASAN_HW_TAGS" in the successive > patch anyway, according to me the overall code looks more uniform like this. But > I do not have a strong opinion or preference on this. Ah, yes, I didn't look at patch 6 again as it was already reviewed and I forgot the context. Leave it as it is then, my reviewed-by still stands. -- Catalin