#
b3e76948 |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: two-line .h pattern Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
#
4d846d26 |
|
10-May-2023 |
Warner Losh <imp@FreeBSD.org> |
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause. Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
|
#
d970778e |
|
08-Mar-2020 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: fix fsync for files with multiple open handles We were reusing a structure for multiple operations, but failing to reinitialize one member. The result is that a server that cares about FUSE file handle IDs would see one correct FUSE_FSYNC operation, and one with the FHID unset. PR: 244431 Reported by: Agata <chogata@gmail.com> MFC after: 2 weeks
|
#
1fa8ebfb |
|
13-Aug-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: add SVN Keywords to the test files Reported by: SVN pre-commit hooks MFC after: 15 days MFC-With: r350665 Sponsored by: The FreeBSD Foundation
|
#
c2265ae7 |
|
12-Aug-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: skip some tests when unsafe aio is disabled MFC after: 16 days MFC-With: r350665 Sponsored by: The FreeBSD Foundation
|
#
7fc0921d |
|
26-Jun-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: annotate deliberate file descriptor leaks in the tests closing a file descriptor causes FUSE activity that is superfluous to the purpose of most tests, but would nonetheless require matching expectations. Rather than do that, most tests deliberately leak file descriptors instead. This commit moves the leakage from each test into two trivial functions: leak and leakdir. Hopefully Coverity will only complain about those functions and not all of their callers. Sponsored by: The FreeBSD Foundation
|
#
bda39894 |
|
27-May-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: set FUSE_WRITE_CACHE when writing from cache This bit tells the server that we're not sure which uid, gid, and/or pid originated the write. I don't know of a single file system that cares, but it's part of the protocol. Sponsored by: The FreeBSD Foundation
|
#
29edc611 |
|
27-May-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: make the tests more cplusplusy * Prefer std::unique_ptr to raw pointers * Prefer pass-by-reference to pass-by-pointer * Prefer static_cast to C-style cast, unless it's too much typing Reported by: ngie Sponsored by: The FreeBSD Foundation
|
#
1f4a83f9 |
|
11-Apr-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: Handle ENOSYS for all remaining opcodes For many FUSE opcodes, an error of ENOSYS has special meaning. fusefs already handled some of those; this commit adds handling for the remainder: * FUSE_FSYNC, FUSE_FSYNCDIR: ENOSYS means "success, and automatically return success without calling the daemon from now on" * All extattr operations: ENOSYS means "fail EOPNOTSUPP, and automatically do it without calling the daemon from now on" PR: 236557 Sponsored by: The FreeBSD Foundation
|
#
cad67791 |
|
08-Apr-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: cache file attributes FUSE_LOOKUP, FUSE_GETATTR, FUSE_SETATTR, FUSE_MKDIR, FUSE_LINK, FUSE_SYMLINK, FUSE_MKNOD, and FUSE_CREATE all return file attributes with a cache validity period. fusefs will now cache the attributes, if the server returns a non-zero cache validity period. This change does _not_ implement finite attr cache timeouts. That will follow as part of PR 235773. PR: 235775 Reported by: cem Sponsored by: The FreeBSD Foundation
|
#
46c37cd0 |
|
05-Apr-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: reenable some fsyncdir tests These tests were actually fixed by r345398, r345390 and r345392, but I neglected to reenable them. Too bad googletest doesn't have the notion of an Expected Failure like ATF does. PR: 236474, 236473 Sponsored by: The FreeBSD Foundation
|
#
9f10f423 |
|
03-Apr-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: send FUSE_FLUSH during VOP_CLOSE The FUSE protocol says that FUSE_FLUSH should be send every time a file descriptor is closed. That's not quite possible in FreeBSD because multiple file descriptors can share a single struct file, and closef doesn't call fo_close until the last close. However, we can still send FUSE_FLUSH on every VOP_CLOSE, which is probably good enough. There are two purposes for FUSE_FLUSH. One is to allow file systems to return EIO if they have an error when writing data that's cached server-side. The other is to release POSIX file locks (which fusefs(5) does not yet support). PR: 236405, 236327 Sponsored by: The FreeBSD Foundation
|
#
42d50d16 |
|
27-Mar-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: add a regression test for bug 236844 fusefs should send a FUSE_OPEN for every open(2) so the daemon can validate accesses. PR: 236844 Sponsored by: The FreeBSD Foundation
|
#
e0bec057 |
|
26-Mar-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: correctly set fuse_release_in.flags in an error path fuse_vnop_create must close the newly created file if it can't allocate a vnode. When it does so, it must use the same file flags for FUSE_RELEASE as it used for FUSE_OPEN or FUSE_CREATE. Reported by: Coverity Coverity CID: 1066204 Sponsored by: The FreeBSD Foundation
|
#
915012e0 |
|
21-Mar-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: Don't treat fsync the same as fdatasync For an unknown reason, fusefs was _always_ sending the fdatasync operation instead of fsync. Now it correctly sends one or the other. Also, remove the Fsync.fsync_metadata_only test, along with the recently removed Fsync.nop. They should never have been added. The kernel shouldn't keep track of which files have dirty data; that's the daemon's job. PR: 236473 Sponsored by: The FreeBSD Foundation
|
#
cc34f2f6 |
|
21-Mar-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: VOP_FSYNC should be synchronous returning asynchronously pretty much defeats the point of fsync PR: 236474 Sponsored by: The FreeBSD Foundation
|
#
9821f1d3 |
|
20-Mar-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: adapt the tests to the fuse => fusefs rename Sponsored by: The FreeBSD Foundation
|