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=-9.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT 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 44801C0044D for ; Mon, 16 Mar 2020 12:40:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 1A163205ED for ; Mon, 16 Mar 2020 12:40:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731050AbgCPMkt (ORCPT ); Mon, 16 Mar 2020 08:40:49 -0400 Received: from poy.remlab.net ([94.23.215.26]:34254 "EHLO ns207790.ip-94-23-215.eu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731003AbgCPMks (ORCPT ); Mon, 16 Mar 2020 08:40:48 -0400 Received: from basile.remlab.net (ip6-localhost [IPv6:::1]) by ns207790.ip-94-23-215.eu (Postfix) with ESMTP id BEBCD5FAC8; Mon, 16 Mar 2020 13:40:46 +0100 (CET) From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= To: catalin.marinas@arm.com, will@kernel.org, linux-arm-kernel@lists.infradead.org Cc: mark.rutland@arm.com, linux-kernel@vger.kernel.org Subject: [PATCH 1/3] arm64: clean up trampoline vector loads Date: Mon, 16 Mar 2020 14:40:44 +0200 Message-Id: <20200316124046.103844-1-remi@remlab.net> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Rémi Denis-Courmont This switches from custom instruction patterns to the regular large memory model sequence with ADRP and LDR. In doing so, the ADD instruction can be eliminated in the SDEI handler, and the code no longer assumes that the trampoline vectors and the vectors address both start on a page boundary. Signed-off-by: Rémi Denis-Courmont --- arch/arm64/kernel/entry.S | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S index e5d4e30ee242..24f828739696 100644 --- a/arch/arm64/kernel/entry.S +++ b/arch/arm64/kernel/entry.S @@ -805,9 +805,9 @@ alternative_else_nop_endif 2: tramp_map_kernel x30 #ifdef CONFIG_RANDOMIZE_BASE - adr x30, tramp_vectors + PAGE_SIZE + adrp x30, tramp_vectors + PAGE_SIZE alternative_insn isb, nop, ARM64_WORKAROUND_QCOM_FALKOR_E1003 - ldr x30, [x30] + ldr x30, [x30, #:lo12:__entry_tramp_data_start] #else ldr x30, =vectors #endif @@ -953,9 +953,8 @@ SYM_CODE_START(__sdei_asm_entry_trampoline) 1: str x4, [x1, #(SDEI_EVENT_INTREGS + S_ORIG_ADDR_LIMIT)] #ifdef CONFIG_RANDOMIZE_BASE - adr x4, tramp_vectors + PAGE_SIZE - add x4, x4, #:lo12:__sdei_asm_trampoline_next_handler - ldr x4, [x4] + adrp x4, tramp_vectors + PAGE_SIZE + ldr x4, [x4, #:lo12:__sdei_asm_trampoline_next_handler] #else ldr x4, =__sdei_asm_handler #endif -- 2.25.1 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=-9.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT 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 45254C0044D for ; Mon, 16 Mar 2020 12:41:32 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 13038205ED for ; Mon, 16 Mar 2020 12:41:32 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="XD8s2TTV" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 13038205ED Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=remlab.net Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=jEUDFmavbvBikLDI6VN3se6z59Ng9CR2UlEpcwbDG4I=; b=XD8s2TTVhDC2sY jL3ekmRjvNwnmp0VbzWi/sp9gOKrfBN7JygL6fTYnNqArFLX9g3HJ0WtietN8g6KHZ2PF3SAcE9VH UddENVbM/Ve2dr+kBx+sjJ91dmm9v3Ri38r51ctAaeTwfVI/6NmlFwamvNF0OO8R7LkKDHWXdAEPx DvMLCCr0647Yncpyrk9NClQ14/yqZlBIDu+I/67cQ2qaugmlsSXgDM4ziq5pzFoqw+mBTRoSN9kUk fvhL53VyX/tg3SzSoNmtGQ6kJoDqFHkVCT+vqFr6SPOQxvrNOuxS4sax1O04AJYG7DVINEXMMl3xr z61OcJoJ/cVfc4o8cu6w==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jDp3g-0002Gd-I1; Mon, 16 Mar 2020 12:41:28 +0000 Received: from poy.remlab.net ([2001:41d0:2:5a1a::] helo=ns207790.ip-94-23-215.eu) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jDp3D-0001rp-LX for linux-arm-kernel@lists.infradead.org; Mon, 16 Mar 2020 12:41:02 +0000 Received: from basile.remlab.net (ip6-localhost [IPv6:::1]) by ns207790.ip-94-23-215.eu (Postfix) with ESMTP id BEBCD5FAC8; Mon, 16 Mar 2020 13:40:46 +0100 (CET) From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= To: catalin.marinas@arm.com, will@kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH 1/3] arm64: clean up trampoline vector loads Date: Mon, 16 Mar 2020 14:40:44 +0200 Message-Id: <20200316124046.103844-1-remi@remlab.net> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200316_054059_851269_236FD60D X-CRM114-Status: UNSURE ( 8.08 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: mark.rutland@arm.com, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org RnJvbTogUsOpbWkgRGVuaXMtQ291cm1vbnQgPHJlbWkuZGVuaXMuY291cm1vbnRAaHVhd2VpLmNv bT4KClRoaXMgc3dpdGNoZXMgZnJvbSBjdXN0b20gaW5zdHJ1Y3Rpb24gcGF0dGVybnMgdG8gdGhl IHJlZ3VsYXIgbGFyZ2UKbWVtb3J5IG1vZGVsIHNlcXVlbmNlIHdpdGggQURSUCBhbmQgTERSLiBJ biBkb2luZyBzbywgdGhlIEFERAppbnN0cnVjdGlvbiBjYW4gYmUgZWxpbWluYXRlZCBpbiB0aGUg U0RFSSBoYW5kbGVyLCBhbmQgdGhlIGNvZGUgbm8KbG9uZ2VyIGFzc3VtZXMgdGhhdCB0aGUgdHJh bXBvbGluZSB2ZWN0b3JzIGFuZCB0aGUgdmVjdG9ycyBhZGRyZXNzIGJvdGgKc3RhcnQgb24gYSBw YWdlIGJvdW5kYXJ5LgoKU2lnbmVkLW9mZi1ieTogUsOpbWkgRGVuaXMtQ291cm1vbnQgPHJlbWku ZGVuaXMuY291cm1vbnRAaHVhd2VpLmNvbT4KLS0tCiBhcmNoL2FybTY0L2tlcm5lbC9lbnRyeS5T IHwgOSArKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDUgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm02NC9rZXJuZWwvZW50cnkuUyBiL2FyY2gvYXJt NjQva2VybmVsL2VudHJ5LlMKaW5kZXggZTVkNGUzMGVlMjQyLi4yNGY4Mjg3Mzk2OTYgMTAwNjQ0 Ci0tLSBhL2FyY2gvYXJtNjQva2VybmVsL2VudHJ5LlMKKysrIGIvYXJjaC9hcm02NC9rZXJuZWwv ZW50cnkuUwpAQCAtODA1LDkgKzgwNSw5IEBAIGFsdGVybmF0aXZlX2Vsc2Vfbm9wX2VuZGlmCiAy OgogCXRyYW1wX21hcF9rZXJuZWwJeDMwCiAjaWZkZWYgQ09ORklHX1JBTkRPTUlaRV9CQVNFCi0J YWRyCXgzMCwgdHJhbXBfdmVjdG9ycyArIFBBR0VfU0laRQorCWFkcnAJeDMwLCB0cmFtcF92ZWN0 b3JzICsgUEFHRV9TSVpFCiBhbHRlcm5hdGl2ZV9pbnNuIGlzYiwgbm9wLCBBUk02NF9XT1JLQVJP VU5EX1FDT01fRkFMS09SX0UxMDAzCi0JbGRyCXgzMCwgW3gzMF0KKwlsZHIJeDMwLCBbeDMwLCAj OmxvMTI6X19lbnRyeV90cmFtcF9kYXRhX3N0YXJ0XQogI2Vsc2UKIAlsZHIJeDMwLCA9dmVjdG9y cwogI2VuZGlmCkBAIC05NTMsOSArOTUzLDggQEAgU1lNX0NPREVfU1RBUlQoX19zZGVpX2FzbV9l bnRyeV90cmFtcG9saW5lKQogMToJc3RyCXg0LCBbeDEsICMoU0RFSV9FVkVOVF9JTlRSRUdTICsg U19PUklHX0FERFJfTElNSVQpXQogCiAjaWZkZWYgQ09ORklHX1JBTkRPTUlaRV9CQVNFCi0JYWRy CXg0LCB0cmFtcF92ZWN0b3JzICsgUEFHRV9TSVpFCi0JYWRkCXg0LCB4NCwgIzpsbzEyOl9fc2Rl aV9hc21fdHJhbXBvbGluZV9uZXh0X2hhbmRsZXIKLQlsZHIJeDQsIFt4NF0KKwlhZHJwCXg0LCB0 cmFtcF92ZWN0b3JzICsgUEFHRV9TSVpFCisJbGRyCXg0LCBbeDQsICM6bG8xMjpfX3NkZWlfYXNt X3RyYW1wb2xpbmVfbmV4dF9oYW5kbGVyXQogI2Vsc2UKIAlsZHIJeDQsID1fX3NkZWlfYXNtX2hh bmRsZXIKICNlbmRpZgotLSAKMi4yNS4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJt LWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21h aWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=