mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
Storing it in a 32-bit variable in struct arch_vcpu caused breakage over context switch. There were also several other places which stored this as the 32-bit value. Update them all. The "struct vcpu_guest_context" case needs special consideration. This struct is in theory is exposed to guests, via the VCPUOP_initialise hypercall. However as discussed in http://lists.xen.org/archives/html/xen-devel/2013-10/msg00912.html this isn't really a guest visible interface since ARM uses PSCI for VCPU bringup (VCPUOP_initialise simply isn't available) The other users of this interface are the domctls, which are not a stable API. Therefore while fixing the ttbcr size also surround the struct in ifdefs to restrict the struct to the hypervisor and the tools only (omitting the extra complexity of renaming as I suggested in the referenced thread). NB TCR_EL1 on arm64 is known as TTBCR on arm32, hence the apparent naming inconsistencies. Spotted-by: Pranavkumar Sawargaonkar <pranavkumar@linaro.org> Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Julien Grall <julien.grall@linaro.org> Acked-by: Pranavkumar Sawargaonkar <pranavkumar@linaro.org> Cc: Anup Patel <anup.patel@linaro.org> Cc: patches@linaro.org Cc: patches@apm.com