diff options
author | Andrei Vagin <avagin@gmail.com> | 2021-09-13 16:52:47 -0700 |
---|---|---|
committer | Andrei Vagin <avagin@google.com> | 2021-09-22 14:39:36 -0700 |
commit | 0bdd79ccd4695ba4539f2a288f88c60c8dd2ce1d (patch) | |
tree | a8bcc326a116577047c84b28423625cc3d2deffc /pkg/sync/atomicptr | |
parent | 981111a9ee27c68c22ab78197cb82539442fb581 (diff) |
kvm: trap mmap syscalls to map new regions to the guest
We install seccomp rules so that the SIGSYS signal is generated for
each mmap system call. Then our signal handler executes the real mmap
syscall and if a new regions is created, it maps it to the guest.
Signed-off-by: Andrei Vagin <avagin@google.com>
Diffstat (limited to 'pkg/sync/atomicptr')
-rw-r--r-- | pkg/sync/atomicptr/generic_atomicptr_unsafe.go | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/pkg/sync/atomicptr/generic_atomicptr_unsafe.go b/pkg/sync/atomicptr/generic_atomicptr_unsafe.go index 82b6df18c..7b9c2a4db 100644 --- a/pkg/sync/atomicptr/generic_atomicptr_unsafe.go +++ b/pkg/sync/atomicptr/generic_atomicptr_unsafe.go @@ -37,6 +37,8 @@ func (p *AtomicPtr) loadPtr(v *Value) { // Load returns the value set by the most recent Store. It returns nil if there // has been no previous call to Store. +// +//go:nosplit func (p *AtomicPtr) Load() *Value { return (*Value)(atomic.LoadPointer(&p.ptr)) } |