summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/kernel/semaphore/semaphore.go
diff options
context:
space:
mode:
authorZhaozhong Ni <nzz@google.com>2018-08-01 15:42:07 -0700
committerShentubot <shentubot@google.com>2018-08-01 15:43:24 -0700
commitb9e1cf8404ce1263176643dee1a1cc835c9d1448 (patch)
tree5382c24abb8c19a50fe714af8bb83e1fff6eaa31 /pkg/sentry/kernel/semaphore/semaphore.go
parent6b87378634e1575cf590b7558f19b40b012849c2 (diff)
stateify: convert all packages to use explicit mode.
PiperOrigin-RevId: 207007153 Change-Id: Ifedf1cc3758dc18be16647a4ece9c840c1c636c9
Diffstat (limited to 'pkg/sentry/kernel/semaphore/semaphore.go')
-rw-r--r--pkg/sentry/kernel/semaphore/semaphore.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/pkg/sentry/kernel/semaphore/semaphore.go b/pkg/sentry/kernel/semaphore/semaphore.go
index a1ee83ce5..aa07946cf 100644
--- a/pkg/sentry/kernel/semaphore/semaphore.go
+++ b/pkg/sentry/kernel/semaphore/semaphore.go
@@ -42,6 +42,8 @@ const (
)
// Registry maintains a set of semaphores that can be found by key or ID.
+//
+// +stateify savable
type Registry struct {
// userNS owning the ipc name this registry belongs to. Immutable.
userNS *auth.UserNamespace
@@ -52,6 +54,8 @@ type Registry struct {
}
// Set represents a set of semaphores that can be operated atomically.
+//
+// +stateify savable
type Set struct {
// registry owning this sem set. Immutable.
registry *Registry
@@ -79,6 +83,8 @@ type Set struct {
}
// sem represents a single semanphore from a set.
+//
+// +stateify savable
type sem struct {
value int16
waiters waiterList `state:"zerovalue"`
@@ -86,6 +92,8 @@ type sem struct {
// waiter represents a caller that is waiting for the semaphore value to
// become positive or zero.
+//
+// +stateify savable
type waiter struct {
waiterEntry