diff options
| -rw-r--r-- | internal/fusefrontend/file_allocate_truncate.go | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/internal/fusefrontend/file_allocate_truncate.go b/internal/fusefrontend/file_allocate_truncate.go index ad02041..bfd11e1 100644 --- a/internal/fusefrontend/file_allocate_truncate.go +++ b/internal/fusefrontend/file_allocate_truncate.go @@ -114,7 +114,10 @@ func (f *File) truncate(newSize uint64) (errno syscall.Errno) { // Prevent reads and writes concurrent with the truncate operation. It's // racy on tmpfs and ext4 ( https://lore.kernel.org/all/18e9fa0f-ec31-9107-459c-ae1694503f87@gmail.com/t/ ) // as evident by TestOpenTruncate test failures. - f.LockSharedStorage(unix.F_WRLCK, 0, 0) + err = f.LockSharedStorage(unix.F_WRLCK, 0, 0) + if err != nil { + return fs.ToErrno(err) + } defer f.UnlockSharedStorage(0, 0) // With -sharedstorage, we keep the on-disk file header. |
