On Thu, Aug 16, 2012 at 6:49 AM, Rusty Russell <rusty.russell@xxxxxxxxxx> wrote: > It's documented to return 0 on success, not the number of msrs in the list. > > Signed-off-by: Rusty Russell <rusty.russell@xxxxxxxxxx> > > diff --git a/arch/arm/kvm/coproc.c b/arch/arm/kvm/coproc.c > index e39b601..23b699f 100644 > --- a/arch/arm/kvm/coproc.c > +++ b/arch/arm/kvm/coproc.c > @@ -954,6 +959,7 @@ unsigned long kvm_arm_num_guest_msrs(struct kvm_vcpu *vcpu) > int kvm_arm_copy_msrindices(struct kvm_vcpu *vcpu, u32 __user *uindices) > { > unsigned int i; > + int err; > > /* First give them all the invariant registers' indices. */ > for (i = 0; i < ARRAY_SIZE(invariant_cp15); i++) { > @@ -962,7 +968,10 @@ int kvm_arm_copy_msrindices(struct kvm_vcpu *vcpu, u32 __user *uindices) > uindices++; > } > > - return walk_msrs(vcpu, uindices); > + err = walk_msrs(vcpu, uindices); > + if (err > 0) > + err = 0; > + return err; > } > > void kvm_coproc_table_init(void) applied _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm