summaryrefslogtreecommitdiffhomepage
path: root/pkg/ring0/defs_impl_arm64.go
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2021-02-10 18:15:48 +0000
committergVisor bot <gvisor-bot@google.com>2021-02-10 18:15:48 +0000
commita40373b6360303daaa7cd266b2e8c42a26425508 (patch)
tree85244444c4eb3a3eea46503b252c072eb6f5634d /pkg/ring0/defs_impl_arm64.go
parent549583ee9f2782807cc4144e64ff7db5fdb71b71 (diff)
parentb9db7db3bdfe1405d14465bb7ad8fb33637fd840 (diff)
Merge release-20210201.0-75-gb9db7db3b (automated)
Diffstat (limited to 'pkg/ring0/defs_impl_arm64.go')
-rw-r--r--pkg/ring0/defs_impl_arm64.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/pkg/ring0/defs_impl_arm64.go b/pkg/ring0/defs_impl_arm64.go
index bd18a11e7..34d687611 100644
--- a/pkg/ring0/defs_impl_arm64.go
+++ b/pkg/ring0/defs_impl_arm64.go
@@ -228,7 +228,7 @@ type KernelArchState struct {
// CPUArchState contains CPU-specific arch state.
type CPUArchState struct {
// stack is the stack used for interrupts on this CPU.
- stack [512]byte
+ stack [128]byte
// errorCode is the error code from the last exception.
errorCode uintptr
@@ -245,6 +245,9 @@ type CPUArchState struct {
// faultAddr is the value of far_el1.
faultAddr uintptr
+ // el0Fp is the address of application's fpstate.
+ el0Fp uintptr
+
// ttbr0Kvm is the value of ttbr0_el1 for sentry.
ttbr0Kvm uintptr
@@ -339,6 +342,7 @@ func Emit(w io.Writer) {
fmt.Fprintf(w, "#define CPU_ERROR_CODE 0x%02x\n", reflect.ValueOf(&c.errorCode).Pointer()-reflect.ValueOf(c).Pointer())
fmt.Fprintf(w, "#define CPU_ERROR_TYPE 0x%02x\n", reflect.ValueOf(&c.errorType).Pointer()-reflect.ValueOf(c).Pointer())
fmt.Fprintf(w, "#define CPU_FAULT_ADDR 0x%02x\n", reflect.ValueOf(&c.faultAddr).Pointer()-reflect.ValueOf(c).Pointer())
+ fmt.Fprintf(w, "#define CPU_FPSTATE_EL0 0x%02x\n", reflect.ValueOf(&c.el0Fp).Pointer()-reflect.ValueOf(c).Pointer())
fmt.Fprintf(w, "#define CPU_TTBR0_KVM 0x%02x\n", reflect.ValueOf(&c.ttbr0Kvm).Pointer()-reflect.ValueOf(c).Pointer())
fmt.Fprintf(w, "#define CPU_TTBR0_APP 0x%02x\n", reflect.ValueOf(&c.ttbr0App).Pointer()-reflect.ValueOf(c).Pointer())
fmt.Fprintf(w, "#define CPU_VECTOR_CODE 0x%02x\n", reflect.ValueOf(&c.vecCode).Pointer()-reflect.ValueOf(c).Pointer())