Antonio SJ Musumeci
e973fd0851
fuse_open.cpp
2024-04-07 16:18:02 -05:00
Antonio SJ Musumeci
9332e42e0a
fuse_open.cpp
2024-04-07 16:16:24 -05:00
Antonio SJ Musumeci
dce45e2ba9
fuse_open.cpp
2024-04-07 15:51:43 -05:00
Antonio SJ Musumeci
7c4f14a7db
fuse_open.cpp
2024-04-07 15:51:16 -05:00
Antonio SJ Musumeci
4d9a390866
fuse_open.cpp
2024-04-07 01:50:42 -05:00
Antonio SJ Musumeci
fb1e3afdb6
fuse_open.cpp
2024-04-07 01:49:30 -05:00
Antonio SJ Musumeci
c9b7ed5b8a
Add support for file io passthrough
...
If using Linux 6.9 or above and enabled (passthrough=true) files
opened or created will use the FUSE passthrough feature.
If direct-io=true / cache.files=off it will override passthrough. If
direct-io-allow-mmap is enabled only mmap will passthrough.
HANDLE_KILLPRIV and V2 are enabled now by default to remove the
kernel's need to issue getattr and getxattr requests.
moveonenospc will not work when leveraging passthrough.
2024-04-06 23:55:11 -05:00
Antonio SJ Musumeci
6aa6452d3e
Add flushonclose feature
2023-10-28 19:47: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
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
538467b86d
config: rework global config, remove rwlock, make branches RCU like
...
Also added unit tests. Should have done separately but found a number of bugs.
2021-01-14 21:02:10 -05:00
Antonio SJ Musumeci
1b26f4908e
general cleanup, slight memory reduction
2020-11-19 22:58:52 -05:00
Antonio SJ Musumeci
fc3453932a
branches: add per branch minfreespace w/ original value as default
...
example: /mnt/disk0=RW,1G:/mnt/disk1=RW,2G
2020-09-04 21:04:45 -04:00
Antonio SJ Musumeci
2fe20b888e
clean up and separate out fs_* files
2020-08-18 19:28:36 -04:00
Antonio SJ Musumeci
15a0aedd25
cleanup: move some config data structures to separate files
2020-07-29 21:42:43 -04:00
Antonio SJ Musumeci
139e61efaa
nfsopenhack: remove empty file check
2020-07-26 17:11:06 -04:00
Antonio SJ Musumeci
93218a343a
NFS open/creat hack
...
A hack to work around non-POSIX NFS <-> FUSE behavior where it turns
an open(O_EXCL|O_CREAT,0444) into multiple calls that results in
EACCES.
2020-07-23 19:36:10 -04:00
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
2020-06-18 18:54:25 -04: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
529a953e30
add file caching across opens and runtime control
2019-05-30 00:10:08 -04:00
Antonio SJ Musumeci
9d9ee7b71d
general code cleanup
2019-01-31 22:47:09 -05:00