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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9F365C47258 for ; Mon, 8 Jan 2024 16:38:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-ID:In-Reply-To: References:Message-ID:Date:Subject:CC:To:From:Reply-To:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=fdd873mO8sjYTNXcFpvLV67tDuh6pOO3MsHhwZq5uSw=; b=JjTHSoShxNzw8k wCYhLD5wwQpyfaDNY/Q/35uXOHAfHejCQ9spuZEQbmgfXOf5e9uji3r6mHf5KG1U1Av/J09w2BzWw sQFXSvk7Niw1nZWLC9Q04yZ/nX5oWFmsafehKjo6eK3ieAcKdMYSSAwXau8nPOpKCHQZLWoSZA9hm Exoh6yKy0Qs7j1RjRVRq3gTNlwRanElM6yLAuv+5XlG/3+sW0cLqyfzb1DMlMat1fYSZNAWFhFcSV nC5QY8vvhEK8I5XZT8cFeUX99DwMYz9V70298Zxp7m7Z/zd2iJPnWCBuh1y3jzfTP4EoWTD/NPHB2 YV9wOPK2luHd7/EBEdRg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1rMsdF-005fDj-2J; Mon, 08 Jan 2024 16:37:45 +0000 Received: from mail-db5eur01on0615.outbound.protection.outlook.com ([2a01:111:f400:fe02::615] helo=EUR01-DB5-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1rMsdC-005fD8-0l for linux-arm-kernel@lists.infradead.org; Mon, 08 Jan 2024 16:37:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HLZjxpOnAL9NVfF3psYRs88w14cOp7ZzmlxrLHM+O6eJKN+1JBKPHNipAHVrQbhe7OUV4iSZALKTbrk0PqulTT1vpLznWT7BJRz9KPIIUIyuOxogdOBuiHmpc5tizro4D/RyTQKaTkuBfiY7NskESPFAwZRUUSxCrKwXyzem4iS0OEB8y1vep7f6Y5YyOKvbxrjT8JrWD72RK61OqzQUMtttyJHDflf5/unVya+s9QhdRSpIUYNiWnE0eIKFnHly0LWnIopxrYU2i00cZBzLg/a/8ArbBZU1NBWc3berltxTMW5SZEMYFSSgGEdArAwCy+oHlGPwyIds+qeZWasIjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yHE5zfrDZtj6MOmsM0D9ABl/GCPiBDPD+3CN+uK+vh4=; b=kEXJwHd0r/oEsH/brEnszPYbnE7K3rfr7OOSudsuSl5ev1kZnYqU/1Pye6lxTsfSB+rAzpKthMV2fS5xB/klMFzTK7tSGP2bEfFJf0fljlBK58KwW15OY4xj9QZKOXZxrOH5lP+ihcTX2fQ35fWNcAnnWNOD1jX7tKfrsR2zLfQpEwTpaOySK+XGKIwy2kJLlO/PTSqfYZrzK4yi2tU94N2lHjOvpF3pwKKpxMn0fxhAI7N3v3kJr6XFaSctqoM+x1iyTAybcrApbkxh+LYQOKmqJm/slVZwMWFihoyBTMSXfa0BBTsujKkEadEsBE0H0X5NnIO0abAFN3swsqZRVw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=lenze.com; dmarc=pass action=none header.from=lenze.com; dkim=pass header.d=lenze.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lenze.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yHE5zfrDZtj6MOmsM0D9ABl/GCPiBDPD+3CN+uK+vh4=; b=eFLu83xMmFBsAfBQcTf/Ka+UZRH0nFhU1ItjCLH1D/kTQ1jzahqnQ/6Q5h8guZA32eTTnC2ZSjtRftiQ3EiXNnsWeiWIYQ7qXRcqXCRW6qAz+hYtCdKLf1xDSvDXYjNmnDh/6rqeM/NcMZNZ9LSOAilHrIw4eYhv2HaxkvzSgepSf0wOR4pKNBNIfop+jx/8kJiySNtFpum7mvOaoMxLAVCRZKvjJjta3RcGYmreeTtJOmThMtsZ+YRdILpBUIam/AqzwL3GwavRY6fIHaLPMIUk/XFi9Q71Pndx/cisVKsYUm7Y9RCFP5EREZCLXKV7S7tGigpuZjS+fSa8JkS+dA== Received: from DB8P194MB0806.EURP194.PROD.OUTLOOK.COM (2603:10a6:10:162::23) by AM8P194MB1172.EURP194.PROD.OUTLOOK.COM (2603:10a6:20b:249::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.14; Mon, 8 Jan 2024 16:37:37 +0000 Received: from DB8P194MB0806.EURP194.PROD.OUTLOOK.COM ([fe80::5d13:7cb5:9ade:602d]) by DB8P194MB0806.EURP194.PROD.OUTLOOK.COM ([fe80::5d13:7cb5:9ade:602d%7]) with mapi id 15.20.7181.014; Mon, 8 Jan 2024 16:37:37 +0000 From: "Brandt, Oliver - Lenze" To: "mark.rutland@arm.com" CC: "linux-arm-kernel@lists.infradead.org" , "will@kernel.org" , "catalin.marinas@arm.com" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH] arm64: mm: disable PAN during caches_clean_inval_user_pou Thread-Topic: [PATCH] arm64: mm: disable PAN during caches_clean_inval_user_pou Thread-Index: AQHaQjKt20xeAz7LS0mwiFLj8Z0q9rDQEaoAgAAL6QA= Date: Mon, 8 Jan 2024 16:37:37 +0000 Message-ID: <15b92eff2767926aa345e159964e342e3b7192ca.camel@lenze.com> References: In-Reply-To: Accept-Language: de-DE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.36.5-0ubuntu1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=lenze.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DB8P194MB0806:EE_|AM8P194MB1172:EE_ x-ms-office365-filtering-correlation-id: 8f9cbfdc-f42d-4a0d-0c7f-08dc10681fb8 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Mrm8K+N0OlZNmmK0pmrQ3lV7fdtWmskL7sMGr6B9s7QqOYT3HOHdpYtsuvBETKyfLvvULcnffRFznaj4LLSmIP0qi07I+8gRlQ2UaJ2Fwh1Yd4Y5hfslxumHY+XtfbT+xhDLJGPWefO4cnenxScrQT1QLC/AwHfqPbOBbLJ/DMJ5WpG8FPU5pLPELPfbODWuVC3pWfTgBbNKrNl3fceP8HEgX62bGMgEdm9TQd4cMt/+Ni7nR2QkwmV8fJk5p0t8GgTWtWbd3iJCgLU/ch4tuBAq4EAKDK4r7QcWm2ofiJc908koXSK0/aENQT0U6Dr+i0/vKOmT3dgEHW8hEfFNG2cYH+AFpx9vGmbGyY8C1HgklGROWEZ3EwI4IMfyDRkkIYrYMXiIZm+VKQM7dMUZaLpaHqv0lXjEX80kUobHWFWWem6QLgxuDQeXW1HRSmNxptLIlNOcwx1/ch6JAGUxd7AAepM6uIDWVUV710a1+Zsqop9plwFJfowuZCn8kp5PtAVNWWOHjXyNEI+OUcMwEBp75Hui3EPfi+v1NSIeN4tSP8HW0AurW59stfCuiNy3YFRxgr3toiB2dHgvlWDqHVQZ4aaBNmvnNoRoCKsMlTDRg54aPLsReqfqRXxhpCNZ x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8P194MB0806.EURP194.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(366004)(346002)(376002)(396003)(230922051799003)(64100799003)(1800799012)(186009)(451199024)(38100700002)(122000001)(41300700001)(4326008)(2906002)(6916009)(5660300002)(38070700009)(54906003)(6486002)(36756003)(86362001)(6512007)(6506007)(316002)(8676002)(8936002)(66946007)(66556008)(66476007)(91956017)(76116006)(66446008)(64756008)(83380400001)(71200400001)(26005)(478600001)(2616005);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dml5UVdSRVQ5amRVejdyUWppSy9vWVkvcUd0YUowZlBxK0V0UjZ6SENLVGJO?= =?utf-8?B?N2k1dWl2Yzk1TUxOWW9HRnl6U2kwNFJsUVErYnF4WTQ3SHdWNWhiNm5FZUl1?= =?utf-8?B?M0VjQlVva05zZkNGYjI4d01HUnBDdFpWV2I5czZDR09tTVNRTnI0RWF0aEtR?= =?utf-8?B?cGtpeEx3azdMbkFwejlzWGJMNnBYOTRVK2svTmhxcGZnSEk5Uk9RYTI0cUp2?= =?utf-8?B?aUZSUnJEVkxjNGtLSzBtMEplbWRaRGtqc0ZvbGJQQ2paT21VeUtrOHVTUGNj?= =?utf-8?B?RFEybHBMckpmMXhjaVY5eWczUFBMdnE2V0xiS0FoNWFDWEFPZ00xTzRRZXEr?= =?utf-8?B?elBGeDkrOE96MkQwL0Vhb29OcTd1emZaTGVDZFJBV0t1eWJaQUhwT0t4ZUVu?= =?utf-8?B?UjBTM2hGaTkyWGxoS0hxSWgzb0VaMWRuYVdwWTdNcFROOVFjWVRWajdxSkZE?= =?utf-8?B?cDlXSDR6aW1oTGFnS0pTZFVrcmpIbSt4V1hSeG5pNVF5Nkx4aUdRNnZFQnNU?= =?utf-8?B?ZFBldUxHREVzQ2dTdEZaYTJxakd4RFdiU0d0enJtU083NnRzaFVlVFVVVGZL?= =?utf-8?B?SlhNcmVzQ08xTTZPWkxOWVluUjlVeEFqMVRFUWhSWHZpcFcxendCMDdIRllW?= =?utf-8?B?RklWWDRQVDRXYkVQb083S2dhTnZKaDBIVm91RXc4VzZYTGdNWjZpQUE1eUpy?= =?utf-8?B?SytOaVpCVUxiWWJQK20vb1E2V3ZodS9QQUNsanMxM1pzWndKcXpKR3o1U3g3?= =?utf-8?B?TllYREVibER3c0JmSXJuanRYNWZKYndXd0lJL0RMbE8xbFBmYkJ0T1RSVE9w?= =?utf-8?B?NVl6NG85TjdQMjFiNTZHTnNadlZwanlqRjZOWlBpQm94bStMUFZldXc4VFJS?= =?utf-8?B?VXhRa1FKUTQyajNuSE8yZnZQUnVUaHNMUFVSRHQ0cU5WWS9KbHpkWi83S2tM?= =?utf-8?B?c1dEaDNFeTBzNnBkOUk5eU1iaVBHWWJlNWYvK3Zra0pNTUlMK3JzWGR2OW95?= =?utf-8?B?WEtUMkxraGlxMlp2K2NoM0JDUEwxekZRL2pkNWNkUERGSE1kSHNTWTlTeGVk?= =?utf-8?B?Skd1bFBiVWlEQS8yVjVCcWUxSGVxdzV2d3pNZklqS1hEOERZVGE1YzJlcWJ1?= =?utf-8?B?MWRKZTl4c1NycEVnRCtLbDh5ajhpZkIxbksxQ0N0WFEvVVNCMTBqQjc0Vlp1?= =?utf-8?B?YXNpMnZDWU9kdVBZK2lyd3JFSHFLc2Z4bXdOVVZaa2t0ZzVsMVBvdnUvM2pP?= =?utf-8?B?WndhNEtnWW9tTjJOVHdyTjR6bEJKYnNQbFl0bUdOVFJHM0NuaUVqaUNjclJK?= =?utf-8?B?ei9Fc3N2b1JUejhkMDNWaldhSHo4NGI2Qks1UWxzZUcvU3dtRzhpQmtUeHpj?= =?utf-8?B?NjBsNlJDbHpXM25nWjU0ZlpUblcyd0tQdjY5dFlnaXJkZWJmSjR5TU9haDBl?= =?utf-8?B?SENPb0NvdS9ndFRmbnB0OW1jSkErS0djSUNGSlo5enF4WSs0S2VqY3VnaFYw?= =?utf-8?B?a0RjekZwWnpzVWIrbE5QczYrVzFCY1dCZlBPemg0ZFp5bGY4N2dUMU1BMSt5?= =?utf-8?B?ZkllMlBKbjRVRS9HUDZibUNOTlVCUS9TOHExM0xhZDVQampCM1grTStySm1X?= =?utf-8?B?cUExNnZzSTE4dzRlOVZyNUo0dUNnVHhYK3l6aTRKVzZyYnAwbFFpM2R2WDMz?= =?utf-8?B?NXJNWENUa3p4NTI1cVVtdjlFNHVUV2liY0dPLzhoNUxTZzJlTEs1blB2OW40?= =?utf-8?B?RzltY1FpZkI0RzcrNEQrWDgyYiszYURITGYzZFRvV0ZvOFJ0QXdQM3JTZEFh?= =?utf-8?B?UnlnUXNBTW9ENG0yYk9DdnhESlZ1Sk1ldldFSE16TXVjNm5IaGgyYlpMWDJx?= =?utf-8?B?QkZ2R0paNTk3UWU1ZWRWNm9ndWVMbXZXODIrZ0tPbE5xc1VnOHUvOENkR0dr?= =?utf-8?B?c0pZMEMxNUxMVUljVEhFWkc0UldRaHVJNWFlT0NHSmVZdUlHdkpnc2ZqNk1u?= =?utf-8?B?eGhmMkx1WHk4VzF1KzYvQlRhcGZjcERGdzJieGZXQlJSZ3FseWM0QTZ0eGtI?= =?utf-8?B?NzJUbC9FT0pxeWFDdVdSQzA5M251VC9LT1l5a2hJRDNjSGt1MVVvNHRCQkxo?= =?utf-8?Q?/Om7SQ55QiHXDP/UBQ9cbAWgV?= Content-ID: MIME-Version: 1.0 X-OriginatorOrg: lenze.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB8P194MB0806.EURP194.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 8f9cbfdc-f42d-4a0d-0c7f-08dc10681fb8 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jan 2024 16:37:37.4430 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 37cf0ce8-ac09-4e7d-9ff2-f1da44914b3e X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: hoj+WK59NiorPyz4nQLwfMcKLDXTNaHugBpe6NAJchXPDBLFJv0x5eX8539uTvQiWmgqBIqO9HSFQFdkeIwHrA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8P194MB1172 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240108_083742_311613_AFD1A7DF X-CRM114-Status: GOOD ( 24.95 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi Mark, > > Hi Oliver, > > On Mon, Jan 08, 2024 at 01:00:39PM +0000, Brandt, Oliver - Lenze wrote: > > Using the cacheflush() syscall from an 32-bit user-space fails when > > ARM64_PAN is used. We 'll get an endless loop: > > > > 1. executing "dc cvau, x2" results in raising an abort > > 2. abort handler does not fix the reason for the abort and > > returns to 1. > > > > Disabling PAN for the time of the cache maintenance fixes this. > > Hmm... the ARM ARM says PSTATE.PAN is not supposed to affect DC CVAU. > > Looking at the latest ARM ARM (ARM DDI 0487J.a), R_PMTWB states: > > > The PSTATE.PAN bit has no effect on all of the following: > > > > o Instruction fetches. > > o Data cache instructions, except DC ZVA. > > o If FEAT_PAN2 is not implemented, then address translation instructions. > > o If FEAT_PAN2 is implemented, then the address translation instructions > > other than AT S1E1RP and AT S1E1WP. > > So IIUC, DC CVAU shouldn't be affected by PAN. Ups... Sorry, didn't noticed this. > This could be a CPU bug; which CPU are you seeing this with? I've stumbled about this while using Intel's simulator "Simics" with a model of the upcoming "Agilex5 socfpga". The "Agilex5" is a SoC containing two Cortex A76 and two Cortex A55. We are expecting the real silicon in a couple of weeks. Seems to be a good idea to check the silicon first. Sorry to bother you with this. Many thanks for the quick reply! > > Mark. Oliver > > > Fixes: 338d4f49d6f7 ("arm64: kernel: Add support for Privileged Access Never") > > Cc: stable@vger.kernel.org > > Signed-off-by: Oliver Brandt > > --- > > arch/arm64/mm/cache.S | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/arch/arm64/mm/cache.S b/arch/arm64/mm/cache.S > > index 503567c864fde..333c4c2baa568 100644 > > --- a/arch/arm64/mm/cache.S > > +++ b/arch/arm64/mm/cache.S > > @@ -70,10 +70,12 @@ SYM_FUNC_ALIAS(__pi_caches_clean_inval_pou, caches_clean_inval_pou) > > */ > > SYM_FUNC_START(caches_clean_inval_user_pou) > > uaccess_ttbr0_enable x2, x3, x4 > > + ALTERNATIVE("nop", SET_PSTATE_PAN(0), ARM64_HAS_PAN, CONFIG_ARM64_PAN) > > > > caches_clean_inval_pou_macro 2f > > mov x0, xzr > > 1: > > + ALTERNATIVE("nop", SET_PSTATE_PAN(1), ARM64_HAS_PAN, CONFIG_ARM64_PAN) > > uaccess_ttbr0_disable x1, x2 > > ret > > 2: > > -- > > 2.43.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel