Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1190051

Re: [PATCH v3 4/5] arm64: kvm: Adopt new alternative assembler macros

From Will Deacon <will.deacon@arm.com>
Newsgroups linux.kernel
Subject Re: [PATCH v3 4/5] arm64: kvm: Adopt new alternative assembler macros
Date 2015-07-22 17:20 +0200
Message-ID <pP3Ym-2d9-17@gated-at.bofh.it> (permalink)
References <pKGQG-6Gh-13@gated-at.bofh.it> <pP0nL-5o8-7@gated-at.bofh.it> <pP0nM-5o8-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Marc, Christoffer,

On Wed, Jul 22, 2015 at 12:21:04PM +0100, Daniel Thompson wrote:
> Convert the dynamic patching for ARM64_HAS_SYSREG_GIC_CPUIF over to
> the newly added alternative assembler macros.

Do you mind if I take this via the arm64 tree? It won't apply in
isolation and I'd expect conflicts to be small/trivial to resolve.

Cheers,

Will

> ---
>  arch/arm64/kvm/hyp.S | 12 ++++++++++--
>  1 file changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm64/kvm/hyp.S b/arch/arm64/kvm/hyp.S
> index 17a8fb14f428..10915aaf0b01 100644
> --- a/arch/arm64/kvm/hyp.S
> +++ b/arch/arm64/kvm/hyp.S
> @@ -810,7 +810,11 @@
>   * Call into the vgic backend for state saving
>   */
>  .macro save_vgic_state
> -	alternative_insn "bl __save_vgic_v2_state", "bl __save_vgic_v3_state", ARM64_HAS_SYSREG_GIC_CPUIF
> +alternative_if_not ARM64_HAS_SYSREG_GIC_CPUIF
> +	bl	__save_vgic_v2_state
> +alternative_else
> +	bl	__save_vgic_v3_state
> +alternative_endif
>  	mrs	x24, hcr_el2
>  	mov	x25, #HCR_INT_OVERRIDE
>  	neg	x25, x25
> @@ -827,7 +831,11 @@
>  	orr	x24, x24, #HCR_INT_OVERRIDE
>  	orr	x24, x24, x25
>  	msr	hcr_el2, x24
> -	alternative_insn "bl __restore_vgic_v2_state", "bl __restore_vgic_v3_state", ARM64_HAS_SYSREG_GIC_CPUIF
> +alternative_if_not ARM64_HAS_SYSREG_GIC_CPUIF
> +	bl	__restore_vgic_v2_state
> +alternative_else
> +	bl	__restore_vgic_v3_state
> +alternative_endif
>  .endm
>  
>  .macro save_timer_state
> -- 
> 2.4.3
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v3 0/5] arm64: alternative: Provide if/else/endif assembler macros Daniel Thompson <daniel.thompson@linaro.org> - 2015-07-22 13:30 +0200
  [PATCH v3 4/5] arm64: kvm: Adopt new alternative assembler macros Daniel Thompson <daniel.thompson@linaro.org> - 2015-07-22 13:30 +0200
    Re: [PATCH v3 4/5] arm64: kvm: Adopt new alternative assembler macros Will Deacon <will.deacon@arm.com> - 2015-07-22 17:20 +0200
      Re: [PATCH v3 4/5] arm64: kvm: Adopt new alternative assembler macros Marc Zyngier <marc.zyngier@arm.com> - 2015-07-22 18:00 +0200
  [PATCH v3 2/5] arm64: mm: Adopt new alternative assembler macros Daniel Thompson <daniel.thompson@linaro.org> - 2015-07-22 13:30 +0200
  [PATCH v3 5/5] arm64: alternative: Remove alternative_insn macro Daniel Thompson <daniel.thompson@linaro.org> - 2015-07-22 13:30 +0200
  [PATCH v3 1/5] arm64: alternative: Provide if/else/endif assembler macros Daniel Thompson <daniel.thompson@linaro.org> - 2015-07-22 13:30 +0200

csiph-web