2012/8/15 Marc Zyngier <marc.zyngier@xxxxxxx>: > r0/r1 are getting mixed up with r13/r14. Probably a copy/paste issue. > > Reported-by: Andreas Sandberg <andreas.sandberg@xxxxxxx> > Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx> > --- > arch/arm/kvm/guest.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/arm/kvm/guest.c b/arch/arm/kvm/guest.c > index 7215305..53f72a0 100644 > --- a/arch/arm/kvm/guest.c > +++ b/arch/arm/kvm/guest.c > @@ -58,8 +58,8 @@ int kvm_arch_vcpu_ioctl_get_regs(struct kvm_vcpu *vcpu, struct kvm_regs *regs) > regs->reg14[MODE_ABT] = vcpu_regs->abt_regs[1]; > regs->reg13[MODE_UND] = vcpu_regs->und_regs[0]; > regs->reg14[MODE_UND] = vcpu_regs->und_regs[1]; > - regs->reg13[MODE_USR] = vcpu_regs->usr_regs[0]; > - regs->reg14[MODE_USR] = vcpu_regs->usr_regs[1]; > + regs->reg13[MODE_USR] = vcpu_regs->usr_regs[13]; > + regs->reg14[MODE_USR] = vcpu_regs->usr_regs[14]; > > regs->spsr[MODE_FIQ] = vcpu_regs->fiq_regs[7]; > regs->spsr[MODE_IRQ] = vcpu_regs->irq_regs[2]; > @@ -94,8 +94,8 @@ int kvm_arch_vcpu_ioctl_set_regs(struct kvm_vcpu *vcpu, struct kvm_regs *regs) > vcpu_regs->abt_regs[1] = regs->reg14[MODE_ABT]; > vcpu_regs->und_regs[0] = regs->reg13[MODE_UND]; > vcpu_regs->und_regs[1] = regs->reg14[MODE_UND]; > - vcpu_regs->usr_regs[0] = regs->reg13[MODE_USR]; > - vcpu_regs->usr_regs[1] = regs->reg14[MODE_USR]; > + vcpu_regs->usr_regs[13] = regs->reg13[MODE_USR]; > + vcpu_regs->usr_regs[14] = regs->reg14[MODE_USR]; > > vcpu_regs->fiq_regs[7] = regs->spsr[MODE_FIQ]; > vcpu_regs->irq_regs[2] = regs->spsr[MODE_IRQ]; > -- > 1.7.10.3 > amazing. applied, thanks! _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm