Commit Graph

1438 Commits (b6e2754edfa8ac864bd26efe8541ebf2ee6563eb)
 

Author SHA1 Message Date
Michael Stapelberg b6e2754edf prefer fusermount3 (from FUSE 3), fall back to old fusermount
fixes #84
3 years ago
Ka-Hing Cheung ffe3eb03da
rw and ro were flipped (#80)
when user mount via fstab, we get '-o rw' implicitly, and under
directmount this _enabled_ MS_RDONLY, which is the opposite of what we
want

refs https://github.com/kahing/goofys/issues/483
3 years ago
kungf 7d791d27a2
make fstype be composed of "fuse" and subtype (#77)
fix #76
3 years ago
Michael Stapelberg 2f65426467 implement NoOpenSupport and NoOpendirSupport
See also:
7678ac5061
d7afaec0b5
d9a9ea94f7
3 years ago
Michael Stapelberg 7c2b569250 implement symlink caching 3 years ago
Michael Stapelberg ae5da07e4c
remove naked returns across the code base (#75)
fixes #73
3 years ago
Ka-Hing Cheung 4898d79241 plumb through Fd in setattr (#67)
this allows us to distinguish between truncate vs ftruncate
4 years ago
Ka-Hing Cheung e7bcad2083 fix getxattr and listxattr (#72)
previously, this will fail if /mnt/file doesn't have an xattr:

```
listxattr("/mnt/file", 0x7fe8b3686830, 256) = -1 EIO (Input/output error)
```

We should be returning the actual size only if the input size is
zero. Related issue is if the filesystem returns ERANGE, we should
propagate that error instead of returning the actual size.

Replaced go-xattr usage with x/sys/unix so we can test this.
4 years ago
Ka-Hing Cheung 4ee1cf7f62 add support for fallocate (#66)
* Fallocate support

* use fallocate wrapper that works on darwin
4 years ago
Michael Stapelberg 081e9f4bc7
Merge pull request #59 from stapelberg/mount
try mounting without fusermount(1) first
4 years ago
Michael Stapelberg 53aac50a1c open /dev/fuse in blocking mode so the runtime does not use a poller
/dev/fuse is not pollable. Go ≥ 1.13 starts reporting this on Read().
4 years ago
Michael Stapelberg b71377f287 try mounting without fusermount(1) first
This requires root privileges or the CAP_SYS_ADMIN capability, but allows
supporting -o suid.
4 years ago
Michael Stapelberg 659cc51b20
convertAttributes: set S_ISUD bit from os.FileMode’s os.ModeSetuid (#58) 4 years ago
Michael Stapelberg cd3c1bb470 flush_fs_test: match another error message 4 years ago
Michael Stapelberg 3c60dc478a .travis.yml: pin to macOS 10.12 4 years ago
Michael Stapelberg fbd48a3771 fix/skip tests for Go 1.13
See https://golang.org/doc/go1.13#os for the corresponding change.
4 years ago
Michael Stapelberg 90d933551c fix formatting directives (to pass go test) 4 years ago
Michael Stapelberg bf89eeaf3e .travis.yml: upgrade to Go 1.13 4 years ago
Functionary Robot cd3959611b samples/memfs: fix errors found by vet 5 years ago
Aaron Jacobs 3b43406003
Merge pull request #39 from saracen/context
replace imports of "golang.org/x/net/context" with "context"
5 years ago
Arran Walker a43f6514bf .travis.yml: upgrade to Go 1.9.3. 5 years ago
Arran Walker 5ee7049312 replace imports of "golang.org/x/net/context" with "context" 5 years ago
Aaron Jacobs c4e473376f
Merge pull request #36 from sbg/feature/hard-links
Hard links implementation
6 years ago
Srdjan Rilak 4ee295e334 Add tests for hard link 6 years ago
Srdjan Rilak 1b4a34cc7b Add CreateLink implementation 6 years ago
Aaron Jacobs 88e3bc5ff0
Merge pull request #34 from inevity/mountsubtype
add fuse mount subtype to mountconfig
6 years ago
baul eba79bc989 add mount subtype documentation 6 years ago
baul 171218ed60 add fuse mount subtype to mountconfig 6 years ago
Ka-Hing Cheung 1ab97fb2eb handle forget inline instead of in goroutine
when we are under memory pressure, or echo 3 > /proc/sys/vm/drop_caches,
kernel can send us many forget ops at the same time if we have lots of
inodes in memory. Running them all in goroutines can lead to even more
memory usage and eventually OOM.
6 years ago
Aaron Jacobs fe7f3a55dc .travis.yml: enable macOS builds too. 6 years ago
Aaron Jacobs da343d6bf5 Add support for xattr ops.
Closes #21.
6 years ago
Aaron Jacobs 6770eccb1c memfs_test: touch up the style of xattr tests. 6 years ago
Ka-Hing Cheung 3eadae8418 use constants from upstream PR 6 years ago
Ka-Hing Cheung d650fe34ba added tests and enhanced comments 6 years ago
Ka-Hing Cheung cbeaa55087 SetXattr support 6 years ago
Ka-Hing Cheung d20c4665c1 GetXattr/ListXattr implementation 6 years ago
Ka-Hing Cheung 8aade5c71f RemoveXattr implementation 6 years ago
Aaron Jacobs 77e8f7f767 Add option for direct I/O.
See #25.
6 years ago
Aaron Jacobs df7caed6a7 dynamic_fs_test: run goimports and reflow text. 6 years ago
Aaron Jacobs 4fc546bdf9 dynamic_fs.go: reflow text. 6 years ago
Ben Sidhom 6a1014cd27 Enable StatFS on dynamicfs
MacOS apparently invokes StatFS on os.Lstat/os.Stat. Note that the
return fields are not actually populated here.
6 years ago
Ben Sidhom 8edb6e4462 Add integration test for direct-io filesystem 6 years ago
Ben Sidhom b289b8e423 Address doc comment. 6 years ago
Ben Sidhom 5f27f3f261 Add comment to read op semantics for direct io 6 years ago
Ben Sidhom 025868ecf2 Add direct io option for file operations 6 years ago
Aaron Jacobs bf33916294 .travis.yml: do away with Go tip. 6 years ago
Aaron Jacobs 6e112b67be .travis.yml: upgrade to Go 1.8.1. 6 years ago
Aaron Jacobs dc1be2d5b8 Update documentation for Go style. 7 years ago
Aaron Jacobs 2642d571aa memfs_test: pass on Go 1.8 and above, too.
This was broken by golang/go@321c312d82.
7 years ago
Aaron Jacobs dfa49f5592 buffer: fix build issues on Go 1.8. 7 years ago