diff options
Diffstat (limited to 'pkg/sentry/fs/host')
-rwxr-xr-x | pkg/sentry/fs/host/host_state_autogen.go | 4 | ||||
-rw-r--r-- | pkg/sentry/fs/host/socket.go | 8 |
2 files changed, 7 insertions, 5 deletions
diff --git a/pkg/sentry/fs/host/host_state_autogen.go b/pkg/sentry/fs/host/host_state_autogen.go index 9611da42a..f0e1c4b88 100755 --- a/pkg/sentry/fs/host/host_state_autogen.go +++ b/pkg/sentry/fs/host/host_state_autogen.go @@ -95,17 +95,17 @@ func (x *inodeFileState) load(m state.Map) { func (x *ConnectedEndpoint) save(m state.Map) { x.beforeSave() + m.Save("ref", &x.ref) m.Save("queue", &x.queue) m.Save("path", &x.path) - m.Save("ref", &x.ref) m.Save("srfd", &x.srfd) m.Save("stype", &x.stype) } func (x *ConnectedEndpoint) load(m state.Map) { + m.Load("ref", &x.ref) m.Load("queue", &x.queue) m.Load("path", &x.path) - m.Load("ref", &x.ref) m.LoadWait("srfd", &x.srfd) m.Load("stype", &x.stype) m.AfterLoad(x.afterLoad) diff --git a/pkg/sentry/fs/host/socket.go b/pkg/sentry/fs/host/socket.go index 7fedc88bc..44c4ee5f2 100644 --- a/pkg/sentry/fs/host/socket.go +++ b/pkg/sentry/fs/host/socket.go @@ -47,12 +47,12 @@ const maxSendBufferSize = 8 << 20 // // +stateify savable type ConnectedEndpoint struct { - queue *waiter.Queue - path string - // ref keeps track of references to a connectedEndpoint. ref refs.AtomicRefCount + queue *waiter.Queue + path string + // If srfd >= 0, it is the host FD that file was imported from. srfd int `state:"wait"` @@ -133,6 +133,8 @@ func NewConnectedEndpoint(ctx context.Context, file *fd.FD, queue *waiter.Queue, // AtomicRefCounters start off with a single reference. We need two. e.ref.IncRef() + e.ref.EnableLeakCheck("host.ConnectedEndpoint") + return &e, nil } |