trapexit
071af2e516
More build process updates ( #1516 )
3 months ago
trapexit
b18aba86b6
Build improvements ( #1501 )
* Remove python dependency
* Remove ecfd
* Improve makefiles
* Make preload.so more 32bit compatible
4 months ago
trapexit
f852474073
Update the secondary group cache ( #1492 )
* Use concurrent_flat_map to build a global cache rather than per
thread.
* Create global maintanence thread manager for clearing unused cache
entries.
5 months ago
trapexit
77ef88b04c
Add fsck.mergerfs tool ( #1483 )
5 months ago
trapexit
23824eaeb4
Misc cleanup
6 months ago
trapexit
92312c8507
Add debugging of mutexes ( #1470 )
When DEBUG defined it will used timed locks which will log when held
too long along with where.
6 months ago
trapexit
fa3266ca7f
Add podman release build tooling + misc build fixes ( #1455 )
7 months ago
trapexit
344014aa81
Rework thread pool for increased stability + config and doc updates ( #1453 )
Also updates fmt to 11.2.0 and replaced syslog usage with a wrapper
leveraging fmt.
7 months ago
Antonio SJ Musumeci
9056898bbf
Move fuse.c and fuse_lowlevel.c to C++
2 years ago
Antonio SJ Musumeci
766b923116
Fix thread pool destruction where threads don't explicitly exit themselves
2 years ago
Antonio SJ Musumeci
51d97bb444
Move fuse thread args out of fuse session object
2 years ago
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.
3 years ago
Antonio SJ Musumeci
34310170ac
Add ability to pin read and processing threads
3 years ago
Antonio SJ Musumeci
a4491169b0
Remove FUSE_USE_VERSION, no longer used
3 years ago
Antonio SJ Musumeci
24423b8d2a
Add async message processing
3 years ago
Antonio SJ Musumeci
9d056d609f
Remove unnecessary libfuse abstractions
3 years ago
Antonio SJ Musumeci
18dead4d86
Add new debug printing routines
4 years ago
Antonio SJ Musumeci
930dad31de
Reduce struct node size
* Replace the stat values with a crc32b of them instead (for auto-cache)
* Replace char flag with bitfield
* Remove node generation. nodeid is an unsigned 64bit int. Would take 500K+ years
to rollover at 1M nodes per second.
4 years ago
Antonio SJ Musumeci
6b5c484fbf
Major rework of memory allocation using fixed mem pools
4 years ago
Antonio SJ Musumeci
8adebc9489
new features: follow-symlinks, rename-exdev, link-exdev
* follow-symlinks: allows mergerfs to transparently follow symlinks
* link-exdev: in the event a link returns EXDEV create a symlink instead
* rename-exdev: in the event a rename returns EXDEV move the oldpath and
create a symlink for the newpath
6 years ago
KARBOWSKI Piotr
f488debf96
libfuse/Makefile: support CXXFLAGS and LDFLAGS passed via environment
5 years ago
KARBOWSKI Piotr
0bc6711a95
libfuse/Makefile: support $AR
5 years ago
Antonio SJ Musumeci
dc1b698847
libfuse cleanup: remove single threaded
5 years ago
Antonio SJ Musumeci
3bfdd78434
libfuse cleanup: remove cuse
5 years ago
Antonio SJ Musumeci
a93bd9f7fa
freebsd: misc cleanups to get freebsd compiling
5 years ago
Antonio SJ Musumeci
8ed3a1f36a
debian: fix installing of fresh deb
5 years ago
Antonio SJ Musumeci
54c41c4994
rework config management
* Add standard way to do str2val and val2str conversion
* Add support for a config file
* Add support for reading and writing settings via ioctl
6 years ago
Antonio SJ Musumeci
698c4147fc
fix getdent name length calculation
6 years ago
Antonio SJ Musumeci
d119807adb
restructure readdir, add readdir_plus
Does not enable READDIR_AUTO. Might add in the future.
7 years ago
Antonio SJ Musumeci
5ce428ca59
rework makefiles + install mount tools
6 years ago
Antonio SJ Musumeci
08e1bef5a9
improve nodeid generation
* Change fuse_ino_t to uint64_t
* Change id generation to 64bit
* Randomize generation value (should help with NFS)
6 years ago
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.
7 years ago
Antonio SJ Musumeci
529a953e30
add file caching across opens and runtime control
7 years ago
Antonio SJ Musumeci
80d56ac94e
add support for POSIX ACLs
7 years ago
Antonio SJ Musumeci
825fcf7f35
cleanup and rework build system
7 years ago
Antonio SJ Musumeci
1be9900733
rework makefiles for better manage parallel builds
7 years ago
Antonio SJ Musumeci
95c0cc741d
replace libfuse's autoconf with makefile
7 years ago