Antonio SJ Musumeci
698c4147fc
fix getdent name length calculation
2020-03-12 23:45:20 -04:00
Antonio SJ Musumeci
3a46ec9fab
fix filename hashing error
2020-03-07 12:09:40 -05:00
Antonio SJ Musumeci
9b2634a1e5
fix name length calculation for musc
2020-02-29 17:15:29 -05:00
Antonio SJ Musumeci
62873d2d3b
use getdents64 on linux
2020-02-28 20:34:12 -05:00
Antonio SJ Musumeci
d119807adb
restructure readdir, add readdir_plus
...
Does not enable READDIR_AUTO. Might add in the future.
2020-02-22 19:45:52 -05:00
Antonio SJ Musumeci
a646fe016d
change inode conversion algo to reduce collision
2020-02-12 21:05:52 -05:00
Antonio SJ Musumeci
576ff3694e
add cache.writeback to xattrs
2020-02-12 19:48:37 -05:00
Antonio SJ Musumeci
903d39f968
add writeback caching
2020-02-09 21:08:53 -05:00
Antonio SJ Musumeci
4d82ed9324
fix short writes on >2GB files when cloning file
2019-10-14 23:32:51 -04:00
Antonio SJ Musumeci
0fffabfbe3
only return 1 branch for rand/eprand policies
2019-09-07 17:25:06 -04:00
Antonio SJ Musumeci
50ad648ce4
initialize mutex to fix lockup
2019-09-07 14:10:36 -04:00
Antonio SJ Musumeci
4c4c27a93e
set uid & gid when calling ioctl
...
Turns out certain ioctl calls check the effective user id (FS_IOC_SETFLAGS).
2019-06-17 13:37:15 -04:00
Antonio SJ Musumeci
5ca928e436
accept old arguments for backwards compatibility
2019-06-10 20:20:41 -04:00
Antonio SJ Musumeci
7cbd88ac81
allow setting of 'max_pages' (via 'fuse_msg_size')
...
Linux 4.20 and above allow setting the number of pages per FUSE message
upto 256 (4K * 256 = 1MiB). This can greatly increase read and write
speeds depending on the workload.
2019-06-03 21:01:19 -04:00
Antonio SJ Musumeci
8cb7195c3e
add copy_file_range support
2019-06-03 07:12:05 -04:00
Antonio SJ Musumeci
529a953e30
add file caching across opens and runtime control
2019-05-30 00:10:08 -04:00
Antonio SJ Musumeci
ddf6a2f105
make async_read optional again
2019-05-28 15:57:50 -04:00
Antonio SJ Musumeci
2323c16316
add readdir caching
2019-05-23 22:11:33 -04:00
Antonio SJ Musumeci
1baa706d37
add symlink caching
2019-05-22 19:25:38 -04:00
Antonio SJ Musumeci
61cded5b34
fix for unlink race condition
2019-05-21 22:57:02 -04:00
Antonio SJ Musumeci
5f2221155c
ensure parallel dirops is enabled if capable
2019-05-20 00:36:42 -04:00
Antonio SJ Musumeci
2b019b84b0
ensure async_aio is enabled if capable
2019-05-20 00:18:56 -04:00
trapexit
af1c0d78e8
Merge pull request #621 from trapexit/posix-acl
...
add support for POSIX ACLs
2019-05-19 18:26:49 -04:00
Antonio SJ Musumeci
80d56ac94e
add support for POSIX ACLs
2019-05-19 18:17:55 -04:00
Antonio SJ Musumeci
1ca70521a4
remove 'remote' flock support
2019-05-19 17:34:56 -04:00
Antonio SJ Musumeci
e052446713
fix setting of fsname
2019-05-12 14:07:21 -04:00
Antonio SJ Musumeci
5883020784
tweak docs
2019-05-10 11:54:41 -04:00
Antonio SJ Musumeci
6ecc618d83
remove .fuse_hidden file creation
...
addresses #521
mergerfs is written using libfuse's high level API. The HLAPI forces a certain
behavior with regard to unlinking or rename overwriting of open files. It
renames the file to .fuse_hiddenXXXXXX and when incoming requests refer
to the unlinked file it will use path based calls and use that path.
This behavior leads to rmdirs failing or some software noticing
the .fuse_hidden files.
This patch changes the HLAPI and removes entirely the .fuse_hidden behavior.
See the README for more.
2019-04-13 21:41:51 -04:00
Antonio SJ Musumeci
2a075ead92
fall back to other file copy methods in clonefile
2019-04-13 15:08:13 -04:00
Antonio SJ Musumeci
b69819e4b2
ioctl: don't set outbufsz when not needed
2019-03-20 10:18:55 -04:00
Antonio SJ Musumeci
0918dfd117
make attr, entry, negative_entry cache timeouts runtime configurable
2019-02-23 01:03:20 -05:00
Antonio SJ Musumeci
95c0cc741d
replace libfuse's autoconf with makefile
2019-02-18 21:36:32 -05:00
Antonio SJ Musumeci
7bf607bb6b
fix FS_IOC_{GET,SET}{FLAGS,VERSION} ioctl calls
2019-02-17 11:48:19 -05:00
Antonio SJ Musumeci
940c323251
misc fixes for FreeBSD
2019-02-06 23:20:28 -05:00
Antonio SJ Musumeci
5ab7d2dd72
remove O_LARGEFILE
2019-02-06 21:06:11 -05:00
Antonio SJ Musumeci
9d9ee7b71d
general code cleanup
2019-01-31 22:47:09 -05:00
Antonio SJ Musumeci
c5b2415daf
remove defaults
, hard code atomic_o_trunc, big_writes, and default_permissions
...
`defaults` is a value used by all filesystems and isn't passed through to
mergerfs when mounting via the fstab or the mount command. This led
to inconsistent application of options. atomic_o_trunc, big_writes, and
default_permissions should be enabled all the time anyway and splice_*
can lead to issues so they are not always enabled.
2019-01-30 22:46:21 -05:00
Antonio SJ Musumeci
5be7e007ce
add statfs cache
2019-01-23 23:06:07 -05:00
Antonio SJ Musumeci
7a057daa0c
add policy cache for 'open'
...
A fusepath -> basepath cache for `open` to limit the overhead of FUSE in 'open, read/write, close' patterns (such as Transmission).
2019-01-22 09:21:15 -05:00
Antonio SJ Musumeci
9fd3b968fc
make ioctl on directories use open policy
2019-01-18 22:41:52 -05:00
Antonio SJ Musumeci
87b2795f2b
set direct_io per open/create, now runtime configurable
2019-01-11 15:23:14 -05:00
Antonio SJ Musumeci
10f7f8bdea
optimize link_cow eligibility check
2019-01-04 10:21:28 -05:00
Antonio SJ Musumeci
dfa1c1ad6f
check minfreespace on newest policy create
2018-12-12 15:53:53 -05:00
Antonio SJ Musumeci
6ae68465cf
fix building on alpine w/ musl
2018-11-28 17:08:40 -05:00
trapexit
3c1f19e85a
Merge pull request #534 from trapexit/xattr
...
change xattr setting notsup to nosys
2018-11-19 23:32:07 -05:00
Antonio SJ Musumeci
7d9458fdd1
change xattr setting notsup to nosys
2018-11-19 23:30:39 -05:00
Antonio SJ Musumeci
43b676a6e2
fix indexing of truncate targets
2018-11-19 23:25:16 -05:00
Antonio SJ Musumeci
c46134c03a
fix building on platforms without O_PATH
2018-11-06 07:59:28 -05:00
Antonio SJ Musumeci
3631ab7df2
optimize readdir file dedup
...
Use fasthash64 to hash filenames to uint64_t and store in khash
set. Significantly reduces malloc/free'ing and memory usage.
2018-11-06 00:05:30 -05:00
Antonio SJ Musumeci
680f8194f9
add ability to change statfs behavior
2018-11-05 21:33:27 -05:00