On 03/12/15 09:58, Pavel Fedin wrote:
> ARM64 CPU has zero register which is read-only, with a value of 0.
> However, KVM currently incorrectly recognizes it being SP (because
> Rt == 31, and in struct user_pt_regs 'regs' array is followed by SP),
> resulting in invalid value being read, or even SP corruption on write.
No really. XZR and SP do share the same encoding.
> The problem has been discovered by performing an operation
>
> *((volatile int *)reg) = 0;
>
> which compiles as "str xzr, [xx]", and resulted in strange values being
> written.
Interesting find. Which compiler is that?
Thanks,
M.
--
Jazz is not dead. It just smells funny...
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html