#
e9b411d2 |
| 06-May-2024 |
Gleb Smirnoff <glebius@FreeBSD.org> |
tests/fusefs: fix all tests that depend on kern.maxphys
The tests try to read kern.maxphys sysctl into int value, while unsigned long is required. Not sure when this was broken, seems like since cd
tests/fusefs: fix all tests that depend on kern.maxphys
The tests try to read kern.maxphys sysctl into int value, while unsigned long is required. Not sure when this was broken, seems like since cd8537910406e.
Reviewed by: asomers Differential Revision: https://reviews.freebsd.org/D45053
show more ...
|
Revision tags: release/13.3.0 |
|
#
8bae22bb |
| 16-Jan-2024 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: prefer new/delete over malloc/free
MFC after: 2 weeks Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D43464
|
Revision tags: release/14.0.0 |
|
#
e5236d25 |
| 21-Sep-2023 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: fix unused variables from fb619c94c67
PR: 270749 Reported by: cy MFC after: 1 week MFC with: fb619c94c679e939496fe0cf94b8d2cba95e6e63 Sponsored by: Axcient
|
#
fb619c94 |
| 20-Sep-2023 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: fix some bugs updating atime during close
When using cached attributes, we must update a file's atime during close, if it has been read since the last attribute refresh. But,
* Don't updat
fusefs: fix some bugs updating atime during close
When using cached attributes, we must update a file's atime during close, if it has been read since the last attribute refresh. But,
* Don't update atime if we lack write permissions to the file or if the file system is readonly. * If the daemon fails our atime update request for any reason, don't report this as a failure for VOP_CLOSE.
PR: 270749 Reported by: Jamie Landeg-Jones <jamie@catflap.org> MFC after: 1 week Sponsored by: Axcient Reviewed by: pfg Differential Revision: https://reviews.freebsd.org/D41925
show more ...
|
#
b3e76948 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
#
811e0a31 |
| 08-Aug-2023 |
Enji Cooper <ngie@FreeBSD.org> |
fusefs tests: handle -Wdeprecated* issues with GoogleTest 1.14.0
`INSTANTIATE_TEST_CASE_P` has been replaced with `INSTANTIATE_TEST_SUITE_P`. Replace all uses of the former macro with the latter mac
fusefs tests: handle -Wdeprecated* issues with GoogleTest 1.14.0
`INSTANTIATE_TEST_CASE_P` has been replaced with `INSTANTIATE_TEST_SUITE_P`. Replace all uses of the former macro with the latter macro.
While here, address the fact that the latter macro doesn't permit some of the constructions that the former macro did, e.g., empty parameters, etc.
MFC after: 2 weeks Reviewed by: asomers Differential Revision: https://reviews.freebsd.org/D41398
show more ...
|
#
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 ...
|
Revision tags: release/13.2.0, release/12.4.0, release/13.1.0 |
|
#
0b6a34ac |
| 12-Feb-2022 |
Alan Somers <asomers@FreeBSD.org> |
[skip ci] fusefs: delete a stray comment from 91972cfcddf
MFC after: 3 days
|
Revision tags: release/12.3.0 |
|
#
d109559d |
| 29-Nov-2021 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: fix 32-bit build of the tests after 91972cfcddf
MFC after: 2 weeks MFC with: 91972cfcddf950d7a9c33df5a9171ada1805a144
|
#
91972cfc |
| 29-Nov-2021 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: update atime on reads when using cached attributes
When using cached attributes, whether or not the data cache is enabled, fusefs must update a file's atime whenever it reads from it, so lon
fusefs: update atime on reads when using cached attributes
When using cached attributes, whether or not the data cache is enabled, fusefs must update a file's atime whenever it reads from it, so long as it wasn't mounted with -o noatime. Update it in-kernel, and flush it to the server on close or during the next setattr operation.
The downside is that close() will now frequently trigger a FUSE_SETATTR upcall. But if you care about performance, you should be using -o noatime anyway.
MFC after: 2 weeks Reviewed by: pfg Differential Revision: https://reviews.freebsd.org/D33145
show more ...
|
#
3fcbde5e |
| 23-Sep-2021 |
Konstantin Belousov <kib@FreeBSD.org> |
tests/sys/fs/fusefs/read.cc: fix build on powerpc64
There sig_atomic_t is shorter than void *. As result, it cannot keep pointer.
Assigning to void * is actually safe for us in a signal handler.
R
tests/sys/fs/fusefs/read.cc: fix build on powerpc64
There sig_atomic_t is shorter than void *. As result, it cannot keep pointer.
Assigning to void * is actually safe for us in a signal handler.
Reviewed by: asomers Sponsored by: The FreeBSD Foundation MFC after: 1 week Fixes: 4f917847c9037d Differential revision: https://reviews.freebsd.org/D32064
show more ...
|
#
4f917847 |
| 16-Sep-2021 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: don't panic if FUSE_GETATTR fails durint VOP_GETPAGES
During VOP_GETPAGES, fusefs needs to determine the file's length, which could require a FUSE_GETATTR operation. If that fails, it's bet
fusefs: don't panic if FUSE_GETATTR fails durint VOP_GETPAGES
During VOP_GETPAGES, fusefs needs to determine the file's length, which could require a FUSE_GETATTR operation. If that fails, it's better to SIGBUS than panic.
MFC after: 1 week Sponsored by: Axcient Reviewed by: markj, kib Differential Revision: https://reviews.freebsd.org/D31994
show more ...
|
Revision tags: release/13.0.0, release/12.2.0, release/11.4.0 |
|
#
44e86fbd |
| 13-Feb-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r357662 through r357854.
|
#
7ee7e409 |
| 12-Feb-2020 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: fix some memory leaks in the tests.
Oddly, most of these were not detected by Coverity.
Reported by: Coverity (one of them, anyway) Coverity CID: 1404490 MFC after: 2 weeks
|
Revision tags: release/12.1.0 |
|
#
f993ed2f |
| 09-Sep-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r351732 through r352104.
|
#
8e765737 |
| 06-Sep-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: coverity cleanup in the tests
Address the following defects reported by Coverity:
* Structurally dead code (CID 1404366): set m_quit before FAIL, not after
* Unchecked return value of sysc
fusefs: coverity cleanup in the tests
Address the following defects reported by Coverity:
* Structurally dead code (CID 1404366): set m_quit before FAIL, not after
* Unchecked return value of sysctlbyname (CID 1404321)
* Unchecked return value of stat(2) (CID 1404471)
* Unchecked return value of open(2) (CID 1404402, 1404529)
* Unchecked return value of dup(2) (CID 1404478)
* Buffer overflows. These are all false positives caused by the fact that Coverity thinks I'm using a buffer to store strings, when in fact I'm really just using it to store a byte array that happens to be initialized with a string. I'm changing the type from char to uint8_t in the hopes that it will placate Coverity. (CID 1404338, 1404350, 1404367, 1404376, 1404379, 1404381, 1404388, 1404403, 1404425, 1404433, 1404434, 1404474, 1404480, 1404484, 1404503, 1404505)
* False positive file descriptor leak. I'm going to try to fix this with Coverity modeling, but I'll also change an EXPECT to ASSERT so we don't perform meaningless assertions after the failure. (CID 1404320, 1404324, 1404440, 1404445).
* Unannotated file descriptor leak. This will be followed up by a Coverity modeling change. (CID 1404326, 1404334, 1404336, 1404357, 1404361, 1404372, 1404391, 1404395, 1404409, 1404430, 1404448, 1404451, 1404455, 1404457, 1404458, 1404460)
* Uninitialized variables in C++ constructors (CID 1404327, 1404346). In the case of m_maxphys, this actually led to part of the FUSE_INIT's response being set to stack garbage during the WriteCluster::clustering test.
* Uninitialized sun_len field in struct sockaddr_un (CID 1404330, 1404371, 1404429).
Reported by: Coverity Reviewed by: emaste MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D21457
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
|
#
0b4275ac |
| 07-Aug-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: merge from projects/fuse2
This commit imports the new fusefs driver. It raises the protocol level from 7.8 to 7.23, fixes many bugs, adds a test suite for the driver, and adds many new featu
fusefs: merge from projects/fuse2
This commit imports the new fusefs driver. It raises the protocol level from 7.8 to 7.23, fixes many bugs, adds a test suite for the driver, and adds many new features. New features include:
* Optional kernel-side permissions checks (-o default_permissions) * Implement VOP_MKNOD, VOP_BMAP, and VOP_ADVLOCK * Allow interrupting FUSE operations * Support named pipes and unix-domain sockets in fusefs file systems * Forward UTIME_NOW during utimensat(2) to the daemon * kqueue support for /dev/fuse * Allow updating mounts with "mount -u" * Allow exporting fusefs file systems over NFS * Server-initiated invalidation of the name cache or data cache * Respect RLIMIT_FSIZE * Try to support servers as old as protocol 7.4
Performance enhancements include:
* Implement FUSE's FOPEN_KEEP_CACHE and FUSE_ASYNC_READ flags * Cache file attributes * Cache lookup entries, both positive and negative * Server-selectable cache modes: writethrough, writeback, or uncached * Write clustering * Readahead * Use counter(9) for statistical reporting
PR: 199934 216391 233783 234581 235773 235774 235775 PR: 236226 236231 236236 236291 236329 236381 236405 PR: 236327 236466 236472 236473 236474 236530 236557 PR: 236560 236844 237052 237181 237588 238565 Reviewed by: bcr (man pages) Reviewed by: cem, ngie, rpokala, glebius, kib, bde, emaste (post-commit review on project branch) MFC after: 3 weeks Relnotes: yes Sponsored by: The FreeBSD Foundation Pull Request: https://reviews.freebsd.org/D21110
show more ...
|
#
5a0b9a27 |
| 20-Jul-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: fix warnings in the tests reported by GCC
Sponsored by: The FreeBSD Foundation
|
#
fca79580 |
| 19-Jul-2019 |
Alan Somers <asomers@FreeBSD.org> |
sendfile: don't panic when VOP_GETPAGES_ASYNC returns an error
PR: 236466 Sponsored by: The FreeBSD Foundation
|
Revision tags: release/11.3.0 |
|
#
f74b33d9 |
| 27-Jun-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: tighten expectations in mmap tests
In r349378 I fixed mmap's habit of reading more data than was available.
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 ...
|
#
f8ebf1cd |
| 26-Jun-2019 |
Alan Somers <asomers@FreeBSD.org> |
fusefs: implement protocol 7.23's FUSE_WRITEBACK_CACHE option
As of protocol 7.23, fuse file systems can specify their cache behavior on a per-mountpoint basis. If they set FUSE_WRITEBACK_CACHE in
fusefs: implement protocol 7.23's FUSE_WRITEBACK_CACHE option
As of protocol 7.23, fuse file systems can specify their cache behavior on a per-mountpoint basis. If they set FUSE_WRITEBACK_CACHE in fuse_init_out.flags, then they'll get the writeback cache. If not, then they'll get the writethrough cache. If they set FOPEN_DIRECT_IO in every FUSE_OPEN response, then they'll get no cache at all.
The old vfs.fusefs.data_cache_mode sysctl is ignored for servers that use protocol 7.23 or later. However, it's retained for older servers, especially for those running in jails that lack access to the new protocol.
This commit also fixes two other minor test bugs: * WriteCluster:SetUp was using an uninitialized variable. * Read.direct_io_pread wasn't verifying that the cache was actually bypassed.
Sponsored by: The FreeBSD Foundation
show more ...
|