History log of /src/tests/sys/fs/fusefs/fsync.cc (Results 1 – 25 of 25)
Revision Date Author Comments
# 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

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

show more ...


# d970778e 09-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

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

show more ...


# dbee856a 13-Aug-2019 Alan Somers <asomers@FreeBSD.org>

fusefs: skip some tests when unsafe aio is disabled

MFC after: 15 days
MFC-With: r350665
Sponsored by: The FreeBSD Foundation


# 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

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

show more ...


# 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,

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

show more ...


# 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

Repor

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

show more ...


# 1f4a83f9 12-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:

*

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

show more ...


# 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. fuse

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

show more ...


# 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 Fai

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

show more ...


# 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 des

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

show more ...


# 42d50d16 28-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 27-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 FU

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

show more ...


# 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 t

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

show more ...


# 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 21-Mar-2019 Alan Somers <asomers@FreeBSD.org>

fusefs: adapt the tests to the fuse => fusefs rename

Sponsored by: The FreeBSD Foundation


# 51786f27 15-Mar-2019 Alan Somers <asomers@FreeBSD.org>

fuse(4): add tests for the FOPEN_KEEP_CACHE option

PR: 236560
Sponsored by: The FreeBSD Foundation


# 71885041 15-Mar-2019 Alan Somers <asomers@FreeBSD.org>

fuse(4): add tests for ENOSYS special cases

PR: 236557
Sponsored by: The FreeBSD Foundation


# 90384791 15-Mar-2019 Alan Somers <asomers@FreeBSD.org>

fuse(4): combine common code in the tests

Sponsored by: The FreeBSD Foundation


# 9ae9282e 15-Mar-2019 Alan Somers <asomers@FreeBSD.org>

fuse(4): add some miscellaneous test cases that I had overlooked

* Test that FUSE_FLUSH and FUSE_RELEASE release POSIX file locks
* Test that FUSE_SETATTR's attr caching feature works
* Fix some min

fuse(4): add some miscellaneous test cases that I had overlooked

* Test that FUSE_FLUSH and FUSE_RELEASE release POSIX file locks
* Test that FUSE_SETATTR's attr caching feature works
* Fix some minor mistakes in the posix file lock tests

Sponsored by: The FreeBSD Foundation

show more ...


# 94ef9d62 14-Mar-2019 Alan Somers <asomers@FreeBSD.org>

fuse(4): add tests for FUSE_INTERRUPT

This required changing the way that all operations are mocked. Previously
MockFS::process had one input argument and one output argument. Now, it
returns a ve

fuse(4): add tests for FUSE_INTERRUPT

This required changing the way that all operations are mocked. Previously
MockFS::process had one input argument and one output argument. Now, it
returns a vector of zero or more responses. This allows tests to simulate
conditions where the filesystem daemon has a queue depth > 1.

PR: 236530
Sponsored by: The FreeBSD Foundation

show more ...


# 0e125f5f 14-Mar-2019 Alan Somers <asomers@FreeBSD.org>

fuse(4): combine common code in the tests

Combine a bunch of mostly similar expect_* methods into utils.cc, and only
define FH in a single place.

Sponsored by: The FreeBSD Foundation


# 4459896e 11-Mar-2019 Alan Somers <asomers@FreeBSD.org>

fuse(4): add tests for FUSE_OPENDIR, FUSE_FSYNC, and FUSE_FSYNCDIR

And one more for FUSE_WRITE, too.

PR: 236379
PR: 236473
PR: 236474
Sponsored by: The FreeBSD Foundation