summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/arch/signal_arm64.go
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2020-02-27 21:39:33 +0000
committergVisor bot <gvisor-bot@google.com>2020-02-27 21:39:33 +0000
commitd28077cca02f4b9dd58f8d3930a614b8b0f5e757 (patch)
tree188831c609c965e0248831bb52539bb2563dac37 /pkg/sentry/arch/signal_arm64.go
parenta13855d9705b7aa2ed481d1775560731a29606eb (diff)
parentd9ee81183fee2288681822a179ef230226fb8930 (diff)
Merge release-20200219.0-57-gd9ee811 (automated)
Diffstat (limited to 'pkg/sentry/arch/signal_arm64.go')
-rwxr-xr-xpkg/sentry/arch/signal_arm64.go21
1 files changed, 18 insertions, 3 deletions
diff --git a/pkg/sentry/arch/signal_arm64.go b/pkg/sentry/arch/signal_arm64.go
index 4f4cc46a8..0c1db4b13 100755
--- a/pkg/sentry/arch/signal_arm64.go
+++ b/pkg/sentry/arch/signal_arm64.go
@@ -30,14 +30,29 @@ type SignalContext64 struct {
Sp uint64
Pc uint64
Pstate uint64
- _pad [8]byte // __attribute__((__aligned__(16)))
- Reserved [4096]uint8
+ _pad [8]byte // __attribute__((__aligned__(16)))
+ Fpsimd64 FpsimdContext // size = 528
+ Reserved [3568]uint8
+}
+
+type aarch64Ctx struct {
+ Magic uint32
+ Size uint32
+}
+
+// FpsimdContext is equivalent to struct fpsimd_context on arm64
+// (arch/arm64/include/uapi/asm/sigcontext.h).
+type FpsimdContext struct {
+ Head aarch64Ctx
+ Fpsr uint32
+ Fpcr uint32
+ Vregs [64]uint64 // actually [32]uint128
}
// UContext64 is equivalent to ucontext on arm64(arch/arm64/include/uapi/asm/ucontext.h).
type UContext64 struct {
Flags uint64
- Link *UContext64
+ Link uint64
Stack SignalStack
Sigset linux.SignalSet
// glibc uses a 1024-bit sigset_t