mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
xen/arm: mask debug exceptions in initial AArch64 guest state
PSR_GUEST64_INIT currently masks SError, IRQ and FIQ, but leaves debug exceptions unmasked. Both the AArch64 Linux boot protocol and PSCI entry requirements expect PSTATE.DAIF to be masked. Add PSR_DBG_MASK to PSR_GUEST64_INIT. This fixes the initial AArch64 guest entry state as well as virtual PSCI CPU_ON and SYSTEM_SUSPEND resume entry. Signed-off-by: Mykola Kvach <mykola_kvach@epam.com> Reviewed-by: Julien Grall <julien@xen.org>
This commit is contained in:
1 parent
eb372d9062
commit
ad8663a75a
1 file changed
+2
-1
@@ -420,7 +420,8 @@ typedef uint64_t xen_callback_t;
|
||||
* zImage kernels on aarch32.
|
||||
*/
|
||||
#define PSR_GUEST32_INIT (PSR_Z|PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_SVC)
|
||||
#define PSR_GUEST64_INIT (PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_EL1h)
|
||||
#define PSR_GUEST64_INIT \
|
||||
(PSR_DBG_MASK|PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_EL1h)
|
||||
|
||||
#define SCTLR_GUEST_INIT xen_mk_ullong(0x00c50078)
|
||||
|
||||
|
||||