summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2020-01-21 16:09:25 -0800
committergVisor bot <gvisor-bot@google.com>2020-01-21 16:09:25 -0800
commitb3405a719cbb33dac2deced192209a5584e5e3d6 (patch)
treebe3ab978eca1b64935ae47d0693c426a641d7473
parent7e6fbc6afe797752efe066a8aa86f9eca973f3a4 (diff)
parent3f0e91b00450f926d8378ebd518b557c1f273712 (diff)
Merge pull request #1275 from lubinszARM:pr_ring0_5
PiperOrigin-RevId: 290839263
-rw-r--r--pkg/sentry/platform/ring0/entry_arm64.s11
1 files changed, 11 insertions, 0 deletions
diff --git a/pkg/sentry/platform/ring0/entry_arm64.s b/pkg/sentry/platform/ring0/entry_arm64.s
index 22af98a18..679842288 100644
--- a/pkg/sentry/platform/ring0/entry_arm64.s
+++ b/pkg/sentry/platform/ring0/entry_arm64.s
@@ -557,6 +557,17 @@ el0_svc:
B ·Halt(SB)
el0_da:
+ WORD $0xd538d092 //MRS TPIDR_EL1, R18
+ WORD $0xd538601a //MRS FAR_EL1, R26
+
+ MOVD R26, CPU_FAULT_ADDR(RSV_REG)
+
+ MOVD $1, R3
+ MOVD R3, CPU_ERROR_TYPE(RSV_REG) // Set error type to user.
+
+ MOVD $PageFault, R3
+ MOVD R3, CPU_VECTOR_CODE(RSV_REG)
+
B ·Halt(SB)
el0_ia: