[GIT PULL] arm/arm64: KVM: Fix unaligned access bug on gicv2 access

Paolo Bonzini pbonzini at redhat.com
Tue Sep 23 01:36:30 PDT 2014


Il 23/09/2014 00:07, Will Deacon ha scritto:
>> >  {
>> >  	if (!(lr_desc.state & LR_STATE_MASK))
>> > -		set_bit(lr, (unsigned long *)vcpu->arch.vgic_cpu.vgic_v2.vgic_elrsr);
>> > +		__set_bit(lr, (unsigned long *)vcpu->arch.vgic_cpu.vgic_v2.vgic_elrsr);
>> >  }
> Does this work for big-endian arm64 machines? Surely the bug is due to
> casting a u32 * to an unsigned long *, and not specifically related to
> atomics (which is where it happened to explode)?

I agree, this doesn't seem to be the right fix.

Paolo



More information about the linux-arm-kernel mailing list