From: Marc Zyngier <marc.zyngier@arm.com> To: Russell King <linux@arm.linux.org.uk>, Ard Biesheuvel <ard.biesheuvel@linaro.org>, Catalin Marinas <catalin.marinas@arm.com>, cdall@linaro.org, james.morse@arm.com Cc: kvm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu Subject: [PATCH v3 23/25] ARM: hyp-stub/KVM: Kill __hyp_get_vectors Date: Mon, 6 Mar 2017 14:24:56 +0000 [thread overview] Message-ID: <20170306142458.8875-24-marc.zyngier@arm.com> (raw) In-Reply-To: <20170306142458.8875-1-marc.zyngier@arm.com> Nobody is using __hyp_get_vectors anymore, so let's remove both implementations (hyp-stub and KVM). Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> --- arch/arm/include/asm/virt.h | 10 ++++------ arch/arm/kernel/hyp-stub.S | 13 +------------ arch/arm/kvm/init.S | 7 +------ arch/arm/kvm/interrupts.S | 4 ---- 4 files changed, 6 insertions(+), 28 deletions(-) diff --git a/arch/arm/include/asm/virt.h b/arch/arm/include/asm/virt.h index 8d5625b790b5..5f45969d4063 100644 --- a/arch/arm/include/asm/virt.h +++ b/arch/arm/include/asm/virt.h @@ -53,7 +53,6 @@ static inline void sync_boot_mode(void) } void __hyp_set_vectors(unsigned long phys_vector_base); -unsigned long __hyp_get_vectors(void); void __hyp_reset_vectors(void); #else #define __boot_cpu_mode (SVC_MODE) @@ -99,12 +98,11 @@ extern char __hyp_text_end[]; /* Only assembly code should need those */ -#define HVC_GET_VECTORS 0 -#define HVC_SET_VECTORS 1 -#define HVC_SOFT_RESTART 2 -#define HVC_RESET_VECTORS 3 +#define HVC_SET_VECTORS 0 +#define HVC_SOFT_RESTART 1 +#define HVC_RESET_VECTORS 2 -#define HVC_STUB_HCALL_NR 4 +#define HVC_STUB_HCALL_NR 3 #endif /* __ASSEMBLY__ */ diff --git a/arch/arm/kernel/hyp-stub.S b/arch/arm/kernel/hyp-stub.S index 3cb01e8a291d..68bf72777ac7 100644 --- a/arch/arm/kernel/hyp-stub.S +++ b/arch/arm/kernel/hyp-stub.S @@ -202,12 +202,7 @@ ARM_BE8(orr r7, r7, #(1 << 25)) @ HSCTLR.EE ENDPROC(__hyp_stub_install_secondary) __hyp_stub_do_trap: - teq r0, #HVC_GET_VECTORS - bne 1f - mrc p15, 4, r0, c12, c0, 0 @ get HVBAR - b __hyp_stub_exit - -1: teq r0, #HVC_SET_VECTORS + teq r0, #HVC_SET_VECTORS bne 1f mcr p15, 4, r1, c12, c0, 0 @ set HVBAR b __hyp_stub_exit @@ -247,12 +242,6 @@ ENDPROC(__hyp_stub_do_trap) * so you will need to set that to something sensible at the new hypervisor's * initialisation entry point. */ -ENTRY(__hyp_get_vectors) - mov r0, #HVC_GET_VECTORS - __HVC(0) - ret lr -ENDPROC(__hyp_get_vectors) - ENTRY(__hyp_set_vectors) mov r1, r0 mov r0, #HVC_SET_VECTORS diff --git a/arch/arm/kvm/init.S b/arch/arm/kvm/init.S index c92e092103b2..3cff15152800 100644 --- a/arch/arm/kvm/init.S +++ b/arch/arm/kvm/init.S @@ -122,12 +122,7 @@ __do_hyp_init: eret ENTRY(__kvm_handle_stub_hvc) - cmp r0, #HVC_GET_VECTORS - bne 1f - mrc p15, 4, r0, c12, c0, 0 @ get HVBAR - b exit - -1: cmp r0, #HVC_SOFT_RESTART + cmp r0, #HVC_SOFT_RESTART bne 1f /* The target is expected in r1 */ diff --git a/arch/arm/kvm/interrupts.S b/arch/arm/kvm/interrupts.S index b1bd316f14c0..80a1d6cd261c 100644 --- a/arch/arm/kvm/interrupts.S +++ b/arch/arm/kvm/interrupts.S @@ -37,10 +37,6 @@ * in Hyp mode (see init_hyp_mode in arch/arm/kvm/arm.c). Return values are * passed in r0 (strictly 32bit). * - * A function pointer with a value of 0xffffffff has a special meaning, - * and is used to implement __hyp_get_vectors in the same way as in - * arch/arm/kernel/hyp_stub.S. - * * The calling convention follows the standard AAPCS: * r0 - r3: caller save * r12: caller save -- 2.11.0
WARNING: multiple messages have this Message-ID (diff)
From: marc.zyngier@arm.com (Marc Zyngier) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v3 23/25] ARM: hyp-stub/KVM: Kill __hyp_get_vectors Date: Mon, 6 Mar 2017 14:24:56 +0000 [thread overview] Message-ID: <20170306142458.8875-24-marc.zyngier@arm.com> (raw) In-Reply-To: <20170306142458.8875-1-marc.zyngier@arm.com> Nobody is using __hyp_get_vectors anymore, so let's remove both implementations (hyp-stub and KVM). Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> --- arch/arm/include/asm/virt.h | 10 ++++------ arch/arm/kernel/hyp-stub.S | 13 +------------ arch/arm/kvm/init.S | 7 +------ arch/arm/kvm/interrupts.S | 4 ---- 4 files changed, 6 insertions(+), 28 deletions(-) diff --git a/arch/arm/include/asm/virt.h b/arch/arm/include/asm/virt.h index 8d5625b790b5..5f45969d4063 100644 --- a/arch/arm/include/asm/virt.h +++ b/arch/arm/include/asm/virt.h @@ -53,7 +53,6 @@ static inline void sync_boot_mode(void) } void __hyp_set_vectors(unsigned long phys_vector_base); -unsigned long __hyp_get_vectors(void); void __hyp_reset_vectors(void); #else #define __boot_cpu_mode (SVC_MODE) @@ -99,12 +98,11 @@ extern char __hyp_text_end[]; /* Only assembly code should need those */ -#define HVC_GET_VECTORS 0 -#define HVC_SET_VECTORS 1 -#define HVC_SOFT_RESTART 2 -#define HVC_RESET_VECTORS 3 +#define HVC_SET_VECTORS 0 +#define HVC_SOFT_RESTART 1 +#define HVC_RESET_VECTORS 2 -#define HVC_STUB_HCALL_NR 4 +#define HVC_STUB_HCALL_NR 3 #endif /* __ASSEMBLY__ */ diff --git a/arch/arm/kernel/hyp-stub.S b/arch/arm/kernel/hyp-stub.S index 3cb01e8a291d..68bf72777ac7 100644 --- a/arch/arm/kernel/hyp-stub.S +++ b/arch/arm/kernel/hyp-stub.S @@ -202,12 +202,7 @@ ARM_BE8(orr r7, r7, #(1 << 25)) @ HSCTLR.EE ENDPROC(__hyp_stub_install_secondary) __hyp_stub_do_trap: - teq r0, #HVC_GET_VECTORS - bne 1f - mrc p15, 4, r0, c12, c0, 0 @ get HVBAR - b __hyp_stub_exit - -1: teq r0, #HVC_SET_VECTORS + teq r0, #HVC_SET_VECTORS bne 1f mcr p15, 4, r1, c12, c0, 0 @ set HVBAR b __hyp_stub_exit @@ -247,12 +242,6 @@ ENDPROC(__hyp_stub_do_trap) * so you will need to set that to something sensible@the new hypervisor's * initialisation entry point. */ -ENTRY(__hyp_get_vectors) - mov r0, #HVC_GET_VECTORS - __HVC(0) - ret lr -ENDPROC(__hyp_get_vectors) - ENTRY(__hyp_set_vectors) mov r1, r0 mov r0, #HVC_SET_VECTORS diff --git a/arch/arm/kvm/init.S b/arch/arm/kvm/init.S index c92e092103b2..3cff15152800 100644 --- a/arch/arm/kvm/init.S +++ b/arch/arm/kvm/init.S @@ -122,12 +122,7 @@ __do_hyp_init: eret ENTRY(__kvm_handle_stub_hvc) - cmp r0, #HVC_GET_VECTORS - bne 1f - mrc p15, 4, r0, c12, c0, 0 @ get HVBAR - b exit - -1: cmp r0, #HVC_SOFT_RESTART + cmp r0, #HVC_SOFT_RESTART bne 1f /* The target is expected in r1 */ diff --git a/arch/arm/kvm/interrupts.S b/arch/arm/kvm/interrupts.S index b1bd316f14c0..80a1d6cd261c 100644 --- a/arch/arm/kvm/interrupts.S +++ b/arch/arm/kvm/interrupts.S @@ -37,10 +37,6 @@ * in Hyp mode (see init_hyp_mode in arch/arm/kvm/arm.c). Return values are * passed in r0 (strictly 32bit). * - * A function pointer with a value of 0xffffffff has a special meaning, - * and is used to implement __hyp_get_vectors in the same way as in - * arch/arm/kernel/hyp_stub.S. - * * The calling convention follows the standard AAPCS: * r0 - r3: caller save * r12: caller save -- 2.11.0
next prev parent reply other threads:[~2017-03-06 14:24 UTC|newest] Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-03-06 14:24 [PATCH v3 00/25] arm/arm64: KVM: Rework the hyp-stub API Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 01/25] arm64: hyp-stub: Implement HVC_RESET_VECTORS stub hypercall Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-13 17:53 ` James Morse 2017-03-13 17:53 ` James Morse 2017-03-21 17:04 ` Catalin Marinas 2017-03-21 17:04 ` Catalin Marinas 2017-03-21 17:25 ` James Morse 2017-03-21 17:25 ` James Morse 2017-03-21 17:37 ` Marc Zyngier 2017-03-21 17:37 ` Marc Zyngier 2017-03-21 17:41 ` James Morse 2017-03-21 17:41 ` James Morse 2017-03-21 18:36 ` Marc Zyngier 2017-03-21 18:36 ` Marc Zyngier 2017-03-21 17:26 ` Marc Zyngier 2017-03-21 17:26 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 02/25] arm64: KVM: " Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-13 17:53 ` James Morse 2017-03-13 17:53 ` James Morse 2017-03-13 18:03 ` Marc Zyngier 2017-03-13 18:03 ` Marc Zyngier 2017-03-13 18:03 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 03/25] arm64: KVM: Implement HVC_GET_VECTORS in the init code Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-13 17:54 ` James Morse 2017-03-13 17:54 ` James Morse 2017-03-06 14:24 ` [PATCH v3 04/25] arm64: KVM: Allow the main HYP code to use the init hyp stub implementation Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-13 17:59 ` James Morse 2017-03-13 17:59 ` James Morse 2017-03-06 14:24 ` [PATCH v3 05/25] arm64: KVM: Convert __cpu_reset_hyp_mode to using __hyp_reset_vectors Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-13 17:59 ` James Morse 2017-03-13 17:59 ` James Morse 2017-03-06 14:24 ` [PATCH v3 06/25] arm64: KVM: Implement HVC_SOFT_RESTART in the init code Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 07/25] ARM: hyp-stub: improve ABI Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 08/25] ARM: soft-reboot into same mode that we entered the kernel Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 09/25] ARM: KVM: Convert KVM to use HVC_GET_VECTORS Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 10/25] ARM: Update cpu_v7_reset documentation Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 11/25] ARM: hyp-stub: Use r1 for the soft-restart address Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 12/25] ARM: Expose the VA/IDMAP offset Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 13/25] ARM: hyp-stub: Implement HVC_RESET_VECTORS stub hypercall Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 14/25] ARM: KVM: " Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 15/25] ARM: KVM: Implement HVC_GET_VECTORS in the init code Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 16/25] ARM: KVM: Allow the main HYP code to use the init hyp stub implementation Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 17/25] ARM: KVM: Convert __cpu_reset_hyp_mode to using __hyp_reset_vectors Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 18/25] ARM: KVM: Implement HVC_SOFT_RESTART in the init code Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 19/25] arm/arm64: KVM: Use __hyp_reset_vectors() directly Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 20/25] arm/arm64: KVM: Remove kvm_get_idmap_start Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 21/25] arm/arm64: KVM: Use HVC_RESET_VECTORS to reinit HYP mode Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 22/25] ARM: decompressor: Remove __hyp_get_vectors usage Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier [this message] 2017-03-06 14:24 ` [PATCH v3 23/25] ARM: hyp-stub/KVM: Kill __hyp_get_vectors Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 24/25] arm64: " Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-06 14:24 ` [PATCH v3 25/25] arm/arm64: Add hyp-stub API documentation Marc Zyngier 2017-03-06 14:24 ` Marc Zyngier 2017-03-14 13:38 ` [PATCH v3 00/25] arm/arm64: KVM: Rework the hyp-stub API Keerthy 2017-03-14 13:38 ` Keerthy 2017-03-14 13:38 ` Keerthy 2017-03-14 13:55 ` Marc Zyngier 2017-03-14 13:55 ` Marc Zyngier 2017-03-14 14:25 ` Nishanth Menon 2017-03-14 14:25 ` Nishanth Menon 2017-03-15 2:25 ` Keerthy 2017-03-15 2:25 ` Keerthy 2017-03-14 16:05 ` Russell King - ARM Linux 2017-03-14 16:05 ` Russell King - ARM Linux 2017-03-14 16:09 ` Marc Zyngier 2017-03-14 16:09 ` Marc Zyngier 2017-03-17 11:43 ` Russell King - ARM Linux 2017-03-17 11:43 ` Russell King - ARM Linux
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20170306142458.8875-24-marc.zyngier@arm.com \ --to=marc.zyngier@arm.com \ --cc=ard.biesheuvel@linaro.org \ --cc=catalin.marinas@arm.com \ --cc=cdall@linaro.org \ --cc=james.morse@arm.com \ --cc=kvm@vger.kernel.org \ --cc=kvmarm@lists.cs.columbia.edu \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux@arm.linux.org.uk \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.