Antonio SJ Musumeci
5c09585801
policy_cache.hpp
2024-02-21 23:39:57 -06:00
Antonio SJ Musumeci
1671712c1c
policy_cache.hpp
2024-02-21 23:39:57 -06:00
Antonio SJ Musumeci
5ed025a563
policy_cache.hpp
2024-02-21 23:39:57 -06:00
Antonio SJ Musumeci
5ee6a72ec8
policy_cache.hpp
2024-02-21 23:39:57 -06:00
Antonio SJ Musumeci
be91baae32
policy_cache.hpp
2024-02-21 23:39:57 -06:00
Antonio SJ Musumeci
61fb7216c8
fuse_getattr.cpp
2024-02-21 23:39:57 -06:00
Antonio SJ Musumeci
7c62fda3c7
fuse_getattr.cpp
2024-02-21 23:39:57 -06:00
Antonio SJ Musumeci
1efc9bb5c6
fuse_getattr.cpp
2024-02-21 23:39:57 -06:00
Antonio SJ Musumeci
bd69b31733
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
d10e22efbf
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
eaaee359c3
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
284f5e2e15
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
0280fd9f87
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
a87b8fdb4b
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
f2c8265c8e
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
7ffa8452d9
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
40ca6694ab
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
3f24caecd8
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
fa6109a638
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
274387dead
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
c2ca218309
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
a3caf447ef
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
de32d6e985
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
bcad5ccf78
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
2902fd3dfd
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
83eb2d1740
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
819c341ec7
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
2d4c73e1fb
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
2543bc096f
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
aa128fa808
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
1716c663c2
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
69370add11
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
69510773b8
fuse_getattr.cpp
2024-02-21 23:39:56 -06:00
Antonio SJ Musumeci
0ca5d6aad0
Add export-support option as possible workaround for NFS EIO issues
2024-02-19 18:58:50 -06:00
Antonio SJ Musumeci
27349e41ef
Update fmt
2024-02-18 17:24:18 -06:00
Antonio SJ Musumeci
b3ce95c422
Update nonstd::optional
2024-02-18 17:24:18 -06:00
Antonio SJ Musumeci
cedc9f0f25
Update ghc::filesystem
2024-02-18 17:24:18 -06:00
trapexit
96d34f1eab
Merge pull request #1280 from trapexit/getpid
...
Fix user.mergerfs.pid
2023-11-11 19:48:28 -06:00
Antonio SJ Musumeci
f66fb7e2d4
Fix user.mergerfs.pid
2023-11-11 19:03:32 -06:00
Antonio SJ Musumeci
bd70928268
Set flush-on-close default to opened-for-write
2023-10-31 09:23:52 -05:00
Antonio SJ Musumeci
d6a2f06797
Only set allow_other when running as root
2023-10-29 01:44:18 -05:00
Antonio SJ Musumeci
6aa6452d3e
Add flushonclose feature
2023-10-28 19:47:23 -05:00
Antonio SJ Musumeci
a7069153bd
Warn if not running as root
2023-10-22 00:43:19 -05:00
Antonio SJ Musumeci
fd33df04a3
Update wyhash to 4.2
2023-10-21 18:03:05 -05:00
Antonio SJ Musumeci
620cab2948
Rework thread pool queue depth impl
2023-10-14 00:58:10 -05:00
Antonio SJ Musumeci
766b923116
Fix thread pool destruction where threads don't explicitly exit themselves
2023-09-09 16:48:47 -05:00
Antonio SJ Musumeci
6d2c99e487
Remove unneeded debug logging from thread pool
2023-09-04 18:39:43 -05:00
Antonio SJ Musumeci
b91cc1c191
Add website and license to version option
2023-09-04 15:57:47 -05:00
Antonio SJ Musumeci
0a94bd7cfc
Rework thread pool, add ability to add/remove threads at runtime
2023-09-03 23:36:03 -05:00
Antonio SJ Musumeci
335ca55a6e
Add proper input validation for readdir policy
2023-09-02 15:47:49 -05:00
Antonio SJ Musumeci
76c8d48dbd
Change threadpool to use concurrentqueue
2023-09-02 00:45:47 -05:00
Antonio SJ Musumeci
0c555e71a0
Initialize readdir threadpool after daemonizing
2023-08-28 22:47:04 -05:00
Antonio SJ Musumeci
8d7017273f
Misc fixes for older platforms
2023-08-22 08:10:55 -05:00
Antonio SJ Musumeci
0ed03a1535
Use relaxed memory order for atomic counters
2023-08-21 15:43:03 -05:00
Antonio SJ Musumeci
fdecabfaab
Update wyhash to final4
2023-08-21 00:18:41 -05:00
Antonio SJ Musumeci
e586d2fd1e
Fix setting of ugids for concurrent readdir
2023-08-20 23:06:05 -05:00
Antonio SJ Musumeci
2377cb05b6
Add thread names for easier debugging
2023-08-14 17:51:41 -05:00
Antonio SJ Musumeci
0aafdefc18
Add ability to invalidate gid cache on demand
...
SIGUSR2 or ioctl
2023-08-13 23:30:52 -05:00
Antonio SJ Musumeci
6dcf6111af
Add callbacks for newer functions
...
* setupmapping
* removemapping
* syncfs
* tmpfile
2023-08-13 17:38:13 -05:00
Antonio SJ Musumeci
c92a10021e
Add readdir policies
2023-08-11 00:05:14 -05:00
Antonio SJ Musumeci
51d97bb444
Move fuse thread args out of fuse session object
2023-07-30 22:52:43 -05:00
Antonio SJ Musumeci
556c6522c0
Update fmt to v10.0.0
2023-07-15 17:47:36 -05:00
Antonio SJ Musumeci
543603bdfc
Update ghc::filesystem to v1.5.14
2023-07-15 14:47:44 -05:00
Antonio SJ Musumeci
707d298d7c
Create functions can set branches RO on EROFS
2023-07-13 21:19:13 -05:00
Antonio SJ Musumeci
fa537961c5
Simplify syslog wrapper a bit
2023-07-06 00:13:42 -05:00
Antonio SJ Musumeci
2722f4f64d
Fix error handling for cached writes
2023-06-29 22:50:24 -05:00
Antonio SJ Musumeci
5ab0fbcaee
Add manual GC triggering + configurable process queue depth
...
Yes, these are unrelated changes but somehow ended up being
prototyped together and I'm too lazy to separate them.
2023-06-26 22:44:23 -05:00
Antonio SJ Musumeci
6a14a10e6c
Fix read/write behavior and return value depending on direct_io
...
Also add parallel direct write option for 6.2+ kernels.
2023-06-24 23:06:14 -05:00
Antonio SJ Musumeci
82430e1079
Fix moveonenospc when file opened with append mode
2023-06-12 23:40:08 -05:00
Antonio SJ Musumeci
c72997f298
Make srcmounts readonly
...
All tools only read from srcmounts and the current setup had a bug
which caused branch mode and minfreespace to be stripped when using
config file.
2023-04-05 22:24:24 -04:00
Antonio SJ Musumeci
cdcfef2ceb
Remove duplicate entries in docs
2023-04-01 14:40:49 -04:00
Antonio SJ Musumeci
0a64d74b4b
Change default read-thread-count from -1 to 0 as documented
2023-03-31 12:54:57 -04:00
Antonio SJ Musumeci
26fd11cb4d
Workaround older gcc bug with namespacing std::hash
2023-03-28 21:53:38 -04:00
Antonio SJ Musumeci
eebd6e9eb4
Actively report to syslog when waiting for mounts
2023-03-28 19:01:21 -04:00
Antonio SJ Musumeci
1c5b0f2f5f
Fix loading readonly / write once options from file
2023-03-19 23:40:32 -04:00
Ilya Taranov
d04e04e89a
Fix config file parsing
2023-03-10 20:55:20 -08:00
Antonio SJ Musumeci
486c5d3734
Add ability to set readahead of mergerfs and branches
2023-03-09 00:12:57 -05:00
Antonio SJ Musumeci
373d331f39
Rework fuse read to use same buffers as messages
2023-02-26 23:31:44 -05:00
Antonio SJ Musumeci
84592a9f13
Remove splicing features
...
After numerous tests it was found the splice features were at best
the same performance as standard IO and at worse actually slower.
To simplify the code all splice features are removed.
2023-02-26 01:42:58 -05:00
Antonio SJ Musumeci
9effeb6869
Add "per-process" file caching feature
...
Allows chosing page caching based on process name.
2023-02-18 01:16:36 -05:00
Antonio SJ Musumeci
2d9c915641
Return NOTTY for all btrfs ioctl calls
...
mergerfs tries to pass through ioctl calls but due to the complexity
of btrfs calls their is risk of segfaults. In the future it may be
required to whitelist all supported ioctl calls.
2023-02-11 10:07:55 -05:00
Antonio SJ Musumeci
9adddfc66d
Add option to lazy umount target mount point
2023-02-02 21:20:23 -05:00
Antonio SJ Musumeci
3e313cd605
Forbid adding mountpoint to branch list
2023-01-29 11:51:56 -05:00
Antonio SJ Musumeci
92ccfd3c89
Hard code setting of allow_other, ignore when set
2023-01-26 23:37:37 -05:00
Antonio SJ Musumeci
a7113bb163
Allow setting of scheduling priority
2023-01-25 23:38:31 -05:00
Antonio SJ Musumeci
939eb3996a
Add option to wait for branches to become new mounts
...
branches-mount-timeout=UINT64 in seconds (default: 0)
2023-01-25 11:59:14 -05:00
Antonio SJ Musumeci
3ee93d4c56
Remove 'nonempty' argument
...
This makes it like all other filesystems and brings it into alignment
with libfuse3's behavior.
2023-01-16 23:33:36 -05:00
Antonio SJ Musumeci
d11807ef7c
Remove use_ino option and make behavior same as if set
2023-01-16 16:21:44 -05:00
Antonio SJ Musumeci
24423b8d2a
Add async message processing
2023-01-16 13:15:53 -05:00
Antonio SJ Musumeci
a6ca96fa08
Fix printf for 32bit systems
2022-12-08 22:04:15 -05:00
Antonio SJ Musumeci
7606430188
Remove libfuse abstraction in prep for adding request data
2022-11-26 23:30:27 -06:00
Antonio SJ Musumeci
32e2c9c48e
Tweaks for 32bit systems
2022-11-05 23:28:10 -04:00
Antonio SJ Musumeci
3b0d7fb26e
Fix setting of stat vars for symlinkify
2022-10-30 22:27:33 -04:00
Antonio SJ Musumeci
46ce28b149
Error when given invalid policy names
2022-08-06 23:01:23 -04:00
Andrea Gelmini
338e559e53
Fix typos
2022-06-22 11:51:23 +02:00
Antonio SJ Musumeci
c9a935835f
Fix query of attr during symlink
...
Using getattr when follow-symlink is enabled causes invalid type to the kernel
if symlink pointed to non-symlink.
2022-03-19 16:18:46 -04:00
Antonio SJ Musumeci
c43b464d6c
Call FUSE getattr rather than syscall for extra logic
...
While more efficient calling regular getattr (stat) leads to incorrect
information being returned and would not work correctly when using
symlinkify.
2021-12-18 17:07:23 -05:00
Antonio SJ Musumeci
e256c88e4c
Get attrs for link, not target
2021-12-16 19:11:29 -05:00
Antonio SJ Musumeci
ee8532c70d
Ensure server handling of locks is disabled
2021-11-27 00:01:12 -05:00
Antonio SJ Musumeci
18dead4d86
Add new debug printing routines
2021-10-27 22:12:10 -04:00