summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/mm/aio_context.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/sentry/mm/aio_context.go')
-rw-r--r--pkg/sentry/mm/aio_context.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/pkg/sentry/mm/aio_context.go b/pkg/sentry/mm/aio_context.go
index 992bde5a5..b42156d45 100644
--- a/pkg/sentry/mm/aio_context.go
+++ b/pkg/sentry/mm/aio_context.go
@@ -28,6 +28,8 @@ import (
)
// aioManager creates and manages asynchronous I/O contexts.
+//
+// +stateify savable
type aioManager struct {
// mu protects below.
mu sync.Mutex `state:"nosave"`
@@ -89,12 +91,16 @@ func (a *aioManager) lookupAIOContext(id uint64) (*AIOContext, bool) {
}
// ioResult is a completed I/O operation.
+//
+// +stateify savable
type ioResult struct {
data interface{}
ioEntry
}
// AIOContext is a single asynchronous I/O context.
+//
+// +stateify savable
type AIOContext struct {
// done is the notification channel used for all requests.
done chan struct{} `state:"nosave"`
@@ -190,6 +196,8 @@ func (ctx *AIOContext) WaitChannel() (chan struct{}, bool) {
// aioMappable implements memmap.MappingIdentity and memmap.Mappable for AIO
// ring buffers.
+//
+// +stateify savable
type aioMappable struct {
refs.AtomicRefCount