summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/fs/host
diff options
context:
space:
mode:
authorZhaozhong Ni <nzz@google.com>2018-05-08 11:36:11 -0700
committerShentubot <shentubot@google.com>2018-05-08 11:36:59 -0700
commit174161013de22be6a42b02ee06611a9de9e20b18 (patch)
treeb910f76ea3ba8b14a29df2d28010fd0af1db18bb /pkg/sentry/fs/host
parent3ac3ea1d6afea0b128112e6a46b8bf47b4b0e02a (diff)
Capture restore file system corruption errors in exit error.
PiperOrigin-RevId: 195850822 Change-Id: I4d7bdd8fe129c5ed461b73e1d7458be2cf5680c2
Diffstat (limited to 'pkg/sentry/fs/host')
-rw-r--r--pkg/sentry/fs/host/inode_state.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/pkg/sentry/fs/host/inode_state.go b/pkg/sentry/fs/host/inode_state.go
index 80066512a..135c75fd5 100644
--- a/pkg/sentry/fs/host/inode_state.go
+++ b/pkg/sentry/fs/host/inode_state.go
@@ -59,7 +59,7 @@ func (i *inodeFileState) afterLoad() {
// saved filesystem are no longer unique on this filesystem.
// Since this violates the contract that filesystems cannot
// change across save and restore, error out.
- panic(fmt.Sprintf("host %s conflict in host device mappings: %s", key, hostFileDevice))
+ panic(fs.ErrCorruption{fmt.Errorf("host %s conflict in host device mappings: %s", key, hostFileDevice)})
}
if !i.descriptor.donated && i.sattr.Type == fs.RegularFile {
@@ -69,10 +69,10 @@ func (i *inodeFileState) afterLoad() {
}
uattr := unstableAttr(i.mops, &s)
if env.ValidateFileSize && uattr.Size != i.savedUAttr.Size {
- panic(fmt.Errorf("file size has changed for %s: previously %d, now %d", i.mops.inodeMappings[i.sattr.InodeID], i.savedUAttr.Size, uattr.Size))
+ panic(fs.ErrCorruption{fmt.Errorf("file size has changed for %s: previously %d, now %d", i.mops.inodeMappings[i.sattr.InodeID], i.savedUAttr.Size, uattr.Size)})
}
if env.ValidateFileTimestamp && uattr.ModificationTime != i.savedUAttr.ModificationTime {
- panic(fmt.Errorf("file modification time has changed for %s: previously %v, now %v", i.mops.inodeMappings[i.sattr.InodeID], i.savedUAttr.ModificationTime, uattr.ModificationTime))
+ panic(fs.ErrCorruption{fmt.Errorf("file modification time has changed for %s: previously %v, now %v", i.mops.inodeMappings[i.sattr.InodeID], i.savedUAttr.ModificationTime, uattr.ModificationTime)})
}
i.savedUAttr = nil
}