Re: linux-next: manual merge of the kvm-arm tree with the arm64 tree
From: Christoffer Dall
Date: Fri Jan 23 2015 - 06:53:24 EST
On Thu, Jan 22, 2015 at 08:51:54AM +0000, Marc Zyngier wrote:
> On Thu, Jan 22 2015 at 5:07:04 am GMT, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Hi Stephen,
>
> > Today's linux-next merge of the kvm-arm tree got a conflict in
> > arch/arm64/include/asm/kvm_arm.h between commit 6e53031ed840 ("arm64:
> > kvm: remove ESR_EL2_* macros") from the arm64 tree and commit
> > 0d97f8848104 ("arm/arm64: KVM: add tracing support for arm64 exit
> > handler") from the kvm-arm tree.
> >
> > I fixed it up (see below, but this probably requires more work) and can
> > carry the fix as necessary (no action is required).
>
> Thanks for dealing with this. I think the following patch should be
> applied on top of your resolution, making the new macro part of the
> asm/esr.h file.
>
> Mark, Wei: does it match your expectations?
>
> Thanks,
>
> M.
>
> diff --git a/arch/arm64/include/asm/esr.h b/arch/arm64/include/asm/esr.h
> index 6216709..92bbae3 100644
> --- a/arch/arm64/include/asm/esr.h
> +++ b/arch/arm64/include/asm/esr.h
> @@ -96,6 +96,7 @@
> #define ESR_ELx_COND_SHIFT (20)
> #define ESR_ELx_COND_MASK (UL(0xF) << ESR_ELx_COND_SHIFT)
> #define ESR_ELx_WFx_ISS_WFE (UL(1) << 0)
> +#define ESR_ELx_xVC_IMM_MASK ((1UL << 16) - 1)
>
> #ifndef __ASSEMBLY__
> #include <asm/types.h>
> diff --git a/arch/arm64/include/asm/kvm_arm.h b/arch/arm64/include/asm/kvm_arm.h
> index 53fbc1e..94674eb 100644
> --- a/arch/arm64/include/asm/kvm_arm.h
> +++ b/arch/arm64/include/asm/kvm_arm.h
> @@ -192,6 +192,4 @@
> /* Hyp Prefetch Fault Address Register (HPFAR/HDFAR) */
> #define HPFAR_MASK (~UL(0xf))
>
> -#define ESR_EL2_HVC_IMM_MASK ((1UL << 16) - 1)
> -
> #endif /* __ARM64_KVM_ARM_H__ */
> diff --git a/arch/arm64/include/asm/kvm_emulate.h b/arch/arm64/include/asm/kvm_emulate.h
> index b861ff6..bbc17cd 100644
> --- a/arch/arm64/include/asm/kvm_emulate.h
> +++ b/arch/arm64/include/asm/kvm_emulate.h
> @@ -133,7 +133,7 @@ static inline phys_addr_t kvm_vcpu_get_fault_ipa(const struct kvm_vcpu *vcpu)
>
> static inline u32 kvm_vcpu_hvc_get_imm(const struct kvm_vcpu *vcpu)
> {
> - return kvm_vcpu_get_hsr(vcpu) & ESR_EL2_HVC_IMM_MASK;
> + return kvm_vcpu_get_hsr(vcpu) & ESR_ELx_xVC_IMM_MASK;
> }
>
> static inline bool kvm_vcpu_dabt_isvalid(const struct kvm_vcpu *vcpu)
>
This looks good to me too, I'll sync with Paolo on how to get this
upstream.
-Christoffer
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/