Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-10-18 | syscallcompat: add getxattr fastpaths | Jakob Unterwurzacher | |
The allocations from Lgetxattr were #1 in the tar extract allocation profile (caused by security.capability lookups). No more! $ benchstat old.txt new.txt name old time/op new time/op delta Lgetxattr-4 15.2µs ± 0% 1.8µs ± 0% ~ (p=1.000 n=1+1) $ ./benchmark.bash Testing gocryptfs at /tmp/benchmark.bash.H8p: gocryptfs v2.0-beta1-4-g95ea738-dirty; go-fuse v2.0.4-0.20200908172753-0b6cbc515082 => github.com/rfjakob/go-fuse/v2 v2.0.4-0.20201015204057-88b12c99f8af; 2020-10-18 go1.15.3 linux/amd64 /tmp/benchmark.bash.H8p.mnt is a mountpoint WRITE: 262144000 bytes (262 MB, 250 MiB) copied, 0,520109 s, 504 MB/s READ: 262144000 bytes (262 MB, 250 MiB) copied, 0,255672 s, 1,0 GB/s UNTAR: 30,238 MD5: 12,721 LS: 10,038 RM: 16,536 | |||
2020-10-17 | fsck: make sure we unmount in all cases | Jakob Unterwurzacher | |
2020-10-16 | syscallcompat: add Lgetxattr benchmark | Jakob Unterwurzacher | |
2020-10-16 | performance.txt: add gocryptfs v1.8.0 results | Jakob Unterwurzacher | |
2020-10-16 | Update performance.txt with gocryptfs v2.0-beta1 result | Jakob Unterwurzacher | |
As expected, we are slow. Fd caching will be implemented later. | |||
2020-10-15 | Update README for v2.0-beta1v2.0-beta1 | Jakob Unterwurzacher | |
2020-10-15 | v2pai: delete fusefrontend_reverse_v1api | Jakob Unterwurzacher | |
Served its mission a copy-paste source but can now be deleted. | |||
2020-10-15 | go.mod: temporarily switch to patched go-fuse fork | Jakob Unterwurzacher | |
Use our fork until https://review.gerrithub.io/c/hanwen/go-fuse/+/503508 gets merged. Command used was: go mod edit -replace github.com/hanwen/go-fuse/v2=github.com/rfjakob/go-fuse/v2@knodes_upstreaming_v3 | |||
2020-10-15 | contrib: cleanup-tmp-mounts: also clean ext4-ramdisk | Jakob Unterwurzacher | |
2020-10-14 | main: show microseconds in go-fuse logs | Jakob Unterwurzacher | |
Suppress the date but show microseconds in fuse debug logs (-fusedebug) and go-fuse warnings. | |||
2020-10-14 | syscallcompat: don't retry Close() | Jakob Unterwurzacher | |
After Close() returns, the fd is dead, even if we received EINTR. Don't retry, we could shoot down an unrelated fd that received the same fd number. | |||
2020-10-14 | syscallcompat: retry ops on EINTR | Jakob Unterwurzacher | |
Retry operations that have been shown to throw EINTR errors on CIFS. Todo: Solution for this pain in the back: warning: unix.Getdents returned errno 2 in the middle of data rm: cannot remove 'linux-3.0.old3/Documentation/ABI/removed': Input/output error Progress towards fixing https://github.com/rfjakob/gocryptfs/issues/483 . | |||
2020-10-11 | syscallcompat: Openat: retry on EINTR | Jakob Unterwurzacher | |
Towards fixing https://github.com/rfjakob/gocryptfs/issues/507 | |||
2020-10-04 | build.bash: show "go mod edit -replace" in version string | Jakob Unterwurzacher | |
If you do something like this, go mod edit -replace github.com/hanwen/go-fuse/v2=/home/jakob/go/src/github.com/hanwen/go-fuse the version string of the resulting binary should reflect that. Before: gocryptfs v1.8.0-135-g352b547-dirty.gofuse_v2api; go-fuse v2.0.4-0.20200908172753-0b6cbc515082; 2020-10-03 go1.15.2 linux/amd64 After: gocryptfs v1.8.0-135-g352b547-dirty.gofuse_v2api; go-fuse v2.0.4-0.20200908172753-0b6cbc515082 => /home/jakob/go/src/github.com/hanwen/go-fuse; 2020-10-03 go1.15.2 linux/amd64 | |||
2020-10-04 | tests: fsstress-gocryptfs.bash: log timestamp for each iteration | Jakob Unterwurzacher | |
2020-10-04 | tests: fsstress-gocryptfs.bash: add DEBUG option | Jakob Unterwurzacher | |
Also add a wrapper script, fsstress.collect-crashes.sh, to collect the debug output. https://github.com/hanwen/go-fuse/issues/372 | |||
2020-10-03 | fsstress-gocryptfs.bash: don't hang if TMPDIR ends in / | Jakob Unterwurzacher | |
We would hang like this ./fsstress-loopback.bash Recompile go-fuse loopback: v2.0.3-7-g0b6cbc5 Waiting for mount: xxxxxxxx^C if TMPDIR has a trailing /. The reason is that the paths in /proc/self/mounts are normalized, while TMPDIR may not be. | |||
2020-09-21 | go mod tidy | Pavol Rusnak | |
2020-09-18 | fsstress-gocryptfs.bash: print loopback version & mount path | Jakob Unterwurzacher | |
To make the used go-fuse version clear in logs, print it on startup, similar to what we do with gocryptfs. | |||
2020-09-18 | contrib/mount-ext4-ramdisk.sh: clean up in error case | Jakob Unterwurzacher | |
Also fix all shellcheck warnings. | |||
2020-09-14 | Add contrib/mount-ext4-ramdisk.sh | Jakob Unterwurzacher | |
2020-09-13 | stress_tests/fsstress-gocryptfs.bash: use rm -Rf for cleanup | Jakob Unterwurzacher | |
Apparently, kernel 5.8 now allows unprivileged "mknod /tmp/x c 0 0": vfs: allow unprivileged whiteout creation https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.8.9&id=a3c751a50fe6bbe50eb7622a14b18b361804ee0c which is why rm throws a new prompt: rm: remove write-protected character special file '...'? Use rm -Rf to suppress that. | |||
2020-09-12 | go.mod: update go-fuse | Jakob Unterwurzacher | |
2020-09-12 | Add support for FIDO2 tokens | Pavol Rusnak | |
2020-09-12 | tests/plaintextnames: add TestInoReuseEvil | Jakob Unterwurzacher | |
2020-09-09 | tests: add TestInoReuse | Jakob Unterwurzacher | |
2020-09-09 | test_helpers: print warning when not running on ext4 | Jakob Unterwurzacher | |
ext4 reuses inode numbers, tmpfs does not. | |||
2020-09-09 | v2api: add Darwin xattr support | Jakob Unterwurzacher | |
2020-09-09 | syscallcompat: add Renameat2 for Darwin | Jakob Unterwurzacher | |
2020-09-09 | test_helpers: mark MountOrFatal as a Helper() | Jakob Unterwurzacher | |
2020-09-06 | manpage: link to exitcodes.go | Jakob Unterwurzacher | |
2020-09-06 | gocryptfs -init: fix wrong exit code on non-empty dir | Jakob Unterwurzacher | |
Fixes https://github.com/rfjakob/gocryptfs/pull/503 | |||
2020-08-30 | v2api/reverse: update TODO comment on xattrs | Jakob Unterwurzacher | |
2020-08-30 | tests/reverse: implement (skipped) xattr test | Jakob Unterwurzacher | |
v1api reverse mode did not have xattr support, the v2api version may have at some point. Prep the test already. | |||
2020-08-16 | v2api/reverse: implement Lseek | Jakob Unterwurzacher | |
2020-08-16 | v2api/reverse: implement Statfs | Jakob Unterwurzacher | |
2020-08-16 | v2api: clean up api TODOs | Jakob Unterwurzacher | |
2020-08-16 | v2api: rename "File2" to just "File" | Jakob Unterwurzacher | |
Rename the symbols and the files. | |||
2020-08-15 | v2api/reverse: finish -exclude | Jakob Unterwurzacher | |
Tests pass now. | |||
2020-08-15 | v2api/reverse: start wiring up -exclude functionality | Jakob Unterwurzacher | |
Exclude in readdir is missing. | |||
2020-08-15 | test_helper: VerifyExistence: don't panic | Jakob Unterwurzacher | |
Instead bubble up the error to the testing object. | |||
2020-08-15 | v2api/reverse: fix two fd leaks | Jakob Unterwurzacher | |
2020-08-15 | v2api/reverse: implement ctlsocksrv.Interface | Jakob Unterwurzacher | |
2020-08-15 | v2api/reverse: implement gocryptfs.conf mapping with -plaintextnames | Jakob Unterwurzacher | |
2020-08-09 | v2api/reverse: implement Read | Jakob Unterwurzacher | |
2020-08-08 | v2api/reverse: implement Readlink | Jakob Unterwurzacher | |
2020-08-02 | v2api/reverse: implement Lookup for longname | Jakob Unterwurzacher | |
2020-08-02 | v2api/reverse: implement Lookup for gocryptfs.conf & gocryptfs.diriv | Jakob Unterwurzacher | |
2020-08-01 | v2api/reverse: add missing decryptPath call openBackingDir | Jakob Unterwurzacher | |
2020-08-01 | v2api/reverse: implement Readdir | Jakob Unterwurzacher | |