diff options
author | gVisor bot <gvisor-bot@google.com> | 2020-09-24 17:19:53 +0000 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2020-09-24 17:19:53 +0000 |
commit | 61cc049caaa2317eda73e66f65f82b5099dd2bc2 (patch) | |
tree | 352bfc9c114c181e052a9656be9f3b2acd5f7b33 /pkg/sentry/fsimpl/pipefs | |
parent | 3102024707dc370e025f1b46fa2be12eade2f9cb (diff) | |
parent | 0a7075f38a4870ded687e117a299ac4996c0673e (diff) |
Merge release-20200914.0-152-g0a7075f38 (automated)
Diffstat (limited to 'pkg/sentry/fsimpl/pipefs')
-rw-r--r-- | pkg/sentry/fsimpl/pipefs/pipefs.go | 4 | ||||
-rw-r--r-- | pkg/sentry/fsimpl/pipefs/pipefs_state_autogen.go | 102 |
2 files changed, 106 insertions, 0 deletions
diff --git a/pkg/sentry/fsimpl/pipefs/pipefs.go b/pkg/sentry/fsimpl/pipefs/pipefs.go index 33e247578..4e2da4810 100644 --- a/pkg/sentry/fsimpl/pipefs/pipefs.go +++ b/pkg/sentry/fsimpl/pipefs/pipefs.go @@ -31,6 +31,7 @@ import ( "gvisor.dev/gvisor/pkg/usermem" ) +// +stateify savable type filesystemType struct{} // Name implements vfs.FilesystemType.Name. @@ -43,6 +44,7 @@ func (filesystemType) GetFilesystem(ctx context.Context, vfsObj *vfs.VirtualFile panic("pipefs.filesystemType.GetFilesystem should never be called") } +// +stateify savable type filesystem struct { kernfs.Filesystem @@ -76,6 +78,8 @@ func (fs *filesystem) PrependPath(ctx context.Context, vfsroot, vd vfs.VirtualDe } // inode implements kernfs.Inode. +// +// +stateify savable type inode struct { kernfs.InodeNotDirectory kernfs.InodeNotSymlink diff --git a/pkg/sentry/fsimpl/pipefs/pipefs_state_autogen.go b/pkg/sentry/fsimpl/pipefs/pipefs_state_autogen.go index e3e3887cd..bdb899396 100644 --- a/pkg/sentry/fsimpl/pipefs/pipefs_state_autogen.go +++ b/pkg/sentry/fsimpl/pipefs/pipefs_state_autogen.go @@ -1,3 +1,105 @@ // automatically generated by stateify. package pipefs + +import ( + "gvisor.dev/gvisor/pkg/state" +) + +func (x *filesystemType) StateTypeName() string { + return "pkg/sentry/fsimpl/pipefs.filesystemType" +} + +func (x *filesystemType) StateFields() []string { + return []string{} +} + +func (x *filesystemType) beforeSave() {} + +func (x *filesystemType) StateSave(m state.Sink) { + x.beforeSave() +} + +func (x *filesystemType) afterLoad() {} + +func (x *filesystemType) StateLoad(m state.Source) { +} + +func (x *filesystem) StateTypeName() string { + return "pkg/sentry/fsimpl/pipefs.filesystem" +} + +func (x *filesystem) StateFields() []string { + return []string{ + "Filesystem", + "devMinor", + } +} + +func (x *filesystem) beforeSave() {} + +func (x *filesystem) StateSave(m state.Sink) { + x.beforeSave() + m.Save(0, &x.Filesystem) + m.Save(1, &x.devMinor) +} + +func (x *filesystem) afterLoad() {} + +func (x *filesystem) StateLoad(m state.Source) { + m.Load(0, &x.Filesystem) + m.Load(1, &x.devMinor) +} + +func (x *inode) StateTypeName() string { + return "pkg/sentry/fsimpl/pipefs.inode" +} + +func (x *inode) StateFields() []string { + return []string{ + "InodeNotDirectory", + "InodeNotSymlink", + "InodeNoopRefCount", + "locks", + "pipe", + "ino", + "uid", + "gid", + "ctime", + } +} + +func (x *inode) beforeSave() {} + +func (x *inode) StateSave(m state.Sink) { + x.beforeSave() + m.Save(0, &x.InodeNotDirectory) + m.Save(1, &x.InodeNotSymlink) + m.Save(2, &x.InodeNoopRefCount) + m.Save(3, &x.locks) + m.Save(4, &x.pipe) + m.Save(5, &x.ino) + m.Save(6, &x.uid) + m.Save(7, &x.gid) + m.Save(8, &x.ctime) +} + +func (x *inode) afterLoad() {} + +func (x *inode) StateLoad(m state.Source) { + m.Load(0, &x.InodeNotDirectory) + m.Load(1, &x.InodeNotSymlink) + m.Load(2, &x.InodeNoopRefCount) + m.Load(3, &x.locks) + m.Load(4, &x.pipe) + m.Load(5, &x.ino) + m.Load(6, &x.uid) + m.Load(7, &x.gid) + m.Load(8, &x.ctime) +} + +func init() { + state.Register((*filesystemType)(nil)) + state.Register((*filesystem)(nil)) + state.Register((*inode)(nil)) +} |