diff mbox

arm64: KVM: export demux regids as KVM_REG_ARM64

Message ID 1404229993-14522-1-git-send-email-alex.bennee@linaro.org (mailing list archive)
State New, archived
Headers show

Commit Message

Alex Bennée July 1, 2014, 3:53 p.m. UTC
I suspect this is a -ECUTPASTE fault from the initial implementation. If
we don't declare the register ID to be KVM_REG_ARM64 the KVM_GET_ONE_REG
implementation kvm_arm_get_reg() returns -EINVAL and hilarity ensues.

The kvm/api.txt document describes all arm64 registers as starting with
0x60xx... (i.e KVM_REG_ARM64).

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
---
 arch/arm64/kvm/sys_regs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Marc Zyngier July 1, 2014, 3:56 p.m. UTC | #1
On 01/07/14 16:53, Alex Bennée wrote:
> I suspect this is a -ECUTPASTE fault from the initial implementation. If
> we don't declare the register ID to be KVM_REG_ARM64 the KVM_GET_ONE_REG
> implementation kvm_arm_get_reg() returns -EINVAL and hilarity ensues.
> 
> The kvm/api.txt document describes all arm64 registers as starting with
> 0x60xx... (i.e KVM_REG_ARM64).
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
> ---
>  arch/arm64/kvm/sys_regs.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c
> index 0324458..5ee99e4 100644
> --- a/arch/arm64/kvm/sys_regs.c
> +++ b/arch/arm64/kvm/sys_regs.c
> @@ -962,7 +962,7 @@ static unsigned int num_demux_regs(void)
>  
>  static int write_demux_regids(u64 __user *uindices)
>  {
> -	u64 val = KVM_REG_ARM | KVM_REG_SIZE_U32 | KVM_REG_ARM_DEMUX;
> +	u64 val = KVM_REG_ARM64 | KVM_REG_SIZE_U32 | KVM_REG_ARM_DEMUX;
>  	unsigned int i;
>  
>  	val |= KVM_REG_ARM_DEMUX_ID_CCSIDR;
> 

-EBROWNPAPERBAG.

Acked-by: Marc Zyngier <marc.zyngier@arm.com>

Thanks,

	M.
Christoffer Dall July 4, 2014, 10:13 a.m. UTC | #2
On Tue, Jul 01, 2014 at 04:56:50PM +0100, Marc Zyngier wrote:
> On 01/07/14 16:53, Alex Bennée wrote:
> > I suspect this is a -ECUTPASTE fault from the initial implementation. If
> > we don't declare the register ID to be KVM_REG_ARM64 the KVM_GET_ONE_REG
> > implementation kvm_arm_get_reg() returns -EINVAL and hilarity ensues.
> > 
> > The kvm/api.txt document describes all arm64 registers as starting with
> > 0x60xx... (i.e KVM_REG_ARM64).
> > 
> > Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> > Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
> > ---
> >  arch/arm64/kvm/sys_regs.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c
> > index 0324458..5ee99e4 100644
> > --- a/arch/arm64/kvm/sys_regs.c
> > +++ b/arch/arm64/kvm/sys_regs.c
> > @@ -962,7 +962,7 @@ static unsigned int num_demux_regs(void)
> >  
> >  static int write_demux_regids(u64 __user *uindices)
> >  {
> > -	u64 val = KVM_REG_ARM | KVM_REG_SIZE_U32 | KVM_REG_ARM_DEMUX;
> > +	u64 val = KVM_REG_ARM64 | KVM_REG_SIZE_U32 | KVM_REG_ARM_DEMUX;
> >  	unsigned int i;
> >  
> >  	val |= KVM_REG_ARM_DEMUX_ID_CCSIDR;
> > 
> 
> -EBROWNPAPERBAG.
> 
> Acked-by: Marc Zyngier <marc.zyngier@arm.com>
> 
Applied to kvmarm/master,

thanks.
diff mbox

Patch

diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c
index 0324458..5ee99e4 100644
--- a/arch/arm64/kvm/sys_regs.c
+++ b/arch/arm64/kvm/sys_regs.c
@@ -962,7 +962,7 @@  static unsigned int num_demux_regs(void)
 
 static int write_demux_regids(u64 __user *uindices)
 {
-	u64 val = KVM_REG_ARM | KVM_REG_SIZE_U32 | KVM_REG_ARM_DEMUX;
+	u64 val = KVM_REG_ARM64 | KVM_REG_SIZE_U32 | KVM_REG_ARM_DEMUX;
 	unsigned int i;
 
 	val |= KVM_REG_ARM_DEMUX_ID_CCSIDR;