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=-5.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,USER_AGENT_SANE_1 autolearn=no 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 CAF5CC43461 for ; Thu, 17 Sep 2020 18:48:11 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 914EF21973 for ; Thu, 17 Sep 2020 18:48:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726543AbgIQSqU (ORCPT ); Thu, 17 Sep 2020 14:46:20 -0400 Received: from foss.arm.com ([217.140.110.172]:50650 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726338AbgIQSpj (ORCPT ); Thu, 17 Sep 2020 14:45:39 -0400 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 D847011D4; Thu, 17 Sep 2020 11:45:35 -0700 (PDT) Received: from [10.37.8.97] (unknown [10.37.8.97]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A75B33F718; Thu, 17 Sep 2020 11:45:32 -0700 (PDT) Subject: Re: [PATCH v2 27/37] arm64: mte: Switch GCR_EL1 in kernel entry and exit To: Catalin Marinas , Andrey Konovalov Cc: Dmitry Vyukov , kasan-dev@googlegroups.com, Andrey Ryabinin , Alexander Potapenko , Marco Elver , Evgenii Stepanov , Elena Petrova , Branislav Rankov , Kevin Brodsky , Will Deacon , Andrew Morton , linux-arm-kernel@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20200917165221.GF10662@gaia> From: Vincenzo Frascino Message-ID: Date: Thu, 17 Sep 2020 19:47:59 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <20200917165221.GF10662@gaia> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 9/17/20 5:52 PM, Catalin Marinas wrote: >> +void mte_init_tags(u64 max_tag) >> +{ >> + u64 incl = GENMASK(max_tag & MTE_TAG_MAX, 0); >> + >> + gcr_kernel_excl = ~incl & SYS_GCR_EL1_EXCL_MASK; >> +} > Do we need to set the actual GCR_EL1 register here? We may not get an > exception by the time KASAN starts using it. It is ok not setting it here because to get exceptions cpuframework mte enable needs to be executed first. In that context we set even the register. -- Regards, Vincenzo