diff options
author | Jamie Liu <jamieliu@google.com> | 2020-08-07 12:54:14 -0700 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2020-08-07 12:56:12 -0700 |
commit | 93cb66825bf098f8a19b3d7f34b33272ceed8cb3 (patch) | |
tree | 874ca56a22b775cb9a9f1a06c24d721d058aba25 /pkg/sentry/fsimpl/gofer/handle.go | |
parent | 293f11ca95fed1b62538bb5f816e145a3b225fc7 (diff) |
Support separate read/write handles in fsimpl/gofer.dentry.
PiperOrigin-RevId: 325490674
Diffstat (limited to 'pkg/sentry/fsimpl/gofer/handle.go')
-rw-r--r-- | pkg/sentry/fsimpl/gofer/handle.go | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/pkg/sentry/fsimpl/gofer/handle.go b/pkg/sentry/fsimpl/gofer/handle.go index 8792ca4f2..104157512 100644 --- a/pkg/sentry/fsimpl/gofer/handle.go +++ b/pkg/sentry/fsimpl/gofer/handle.go @@ -63,6 +63,10 @@ func openHandle(ctx context.Context, file p9file, read, write, trunc bool) (hand }, nil } +func (h *handle) isOpen() bool { + return !h.file.isNil() +} + func (h *handle) close(ctx context.Context) { h.file.close(ctx) h.file = p9file{} @@ -124,18 +128,3 @@ func (h *handle) writeFromBlocksAt(ctx context.Context, srcs safemem.BlockSeq, o } return cp, cperr } - -func (h *handle) sync(ctx context.Context) error { - // Handle most common case first. - if h.fd >= 0 { - ctx.UninterruptibleSleepStart(false) - err := syscall.Fsync(int(h.fd)) - ctx.UninterruptibleSleepFinish(false) - return err - } - if h.file.isNil() { - // File hasn't been touched, there is nothing to sync. - return nil - } - return h.file.fsync(ctx) -} |