On Wed, Oct 17, 2012 at 10:12 AM, Marc Zyngier <marc.zyngier@xxxxxxx> wrote: > In order to make sure the asm-accessed fields are within reach, > move these fields to the top of the structure. > > Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx> > --- > arch/arm/include/asm/kvm_arch_timer.h | 25 +++++++++++++++---------- > 1 file changed, 15 insertions(+), 10 deletions(-) > > diff --git a/arch/arm/include/asm/kvm_arch_timer.h b/arch/arm/include/asm/kvm_arch_timer.h > index 512ee39..bd5e501 100644 > --- a/arch/arm/include/asm/kvm_arch_timer.h > +++ b/arch/arm/include/asm/kvm_arch_timer.h > @@ -44,6 +44,21 @@ struct arch_timer_kvm { > > struct arch_timer_cpu { > #ifdef CONFIG_KVM_ARM_TIMER > + /* Registers: control register, timer value */ > + u32 cntv_ctl; /* Saved/restored */ > + union { > + cycle_t cntv_cval; > + struct { > + u32 low; /* Saved/restored */ > + u32 high; /* Saved/restored */ > + } cntv_cval32; > + }; > + > + /* > + * Anything that is not used directly from assembly code goes > + * here. > + */ > + > /* Background timer used when the guest is not running */ > struct hrtimer timer; > > @@ -55,16 +70,6 @@ struct arch_timer_cpu { > > /* Timer IRQ */ > const struct kvm_irq_level *irq; > - > - /* Registers: control register, timer value */ > - u32 cntv_ctl; /* Saved/restored */ > - union { > - cycle_t cntv_cval; > - struct { > - u32 low; /* Saved/restored */ > - u32 high; /* Saved/restored */ > - } cntv_cval32; > - }; > #endif > }; > > -- > 1.7.12 > looks good, thanks. _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm