|
Revision tags: release/13.4.0-p5, release/13.5.0-p1, release/14.2.0-p3, release/13.5.0, release/14.2.0-p2, release/14.1.0-p8, release/13.4.0-p4, release/14.1.0-p7, release/14.2.0-p1, release/13.4.0-p3, release/14.2.0, release/13.4.0, release/14.1.0 |
|
| #
9ccd5394 |
| 07-May-2024 |
Konstantin Belousov <[email protected]> |
devfs_allocv(): style
(cherry picked from commit 6d79564fe341c8dbf09405cae1a0a76460aaf8aa)
|
| #
cde0347c |
| 22-Mar-2024 |
Konstantin Belousov <[email protected]> |
cdevpriv(9): add iterator
(cherry picked from commit d3efbe0132b24e8660df836905cda7662f85a154)
|
|
Revision tags: release/13.3.0 |
|
| #
7dff3d1c |
| 19-Jan-2024 |
Konstantin Belousov <[email protected]> |
kcmp(2): implement for devfs files
(cherry picked from commit 5c41d888de1aba0e82531fb6df4cc3b6989d37bd)
|
|
Revision tags: release/14.0.0 |
|
| #
23332e34 |
| 19-Sep-2023 |
Jason A. Harmening <[email protected]> |
devfs: add integrity asserts for cdevp_list
It's possible for misuse of cdev KPIs or for bugs in devfs itself to result in e.g. a cdev object's container being freed while still on the global list u
devfs: add integrity asserts for cdevp_list
It's possible for misuse of cdev KPIs or for bugs in devfs itself to result in e.g. a cdev object's container being freed while still on the global list used to populate each devfs mount; see PR 273418 for a recent example.
Since a node may be marked inactive well before it is reaped from the list, add a new flag solely to track list membership, and employ it in some basic list integrity assertions to catch bad actors.
Discussed with: kib, mjg
(cherry picked from commit 67864268da53b792836f13be10299de8cd62997e)
show more ...
|
| #
95ee2897 |
| 16-Aug-2023 |
Warner Losh <[email protected]> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
| #
4d846d26 |
| 10-May-2023 |
Warner Losh <[email protected]> |
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 |
|
| #
829f0bcb |
| 19-Dec-2022 |
Mateusz Guzik <[email protected]> |
vfs: add the concept of vnode state transitions
To quote from a comment above vput_final: <quote> * XXX Some filesystems pass in an exclusively locked vnode and strongly depend * on the lock being h
vfs: add the concept of vnode state transitions
To quote from a comment above vput_final: <quote> * XXX Some filesystems pass in an exclusively locked vnode and strongly depend * on the lock being held all the way until VOP_INACTIVE. This in particular * happens with UFS which adds half-constructed vnodes to the hash, where they * can be found by other code. </quote>
As is there is no mechanism which allows filesystems to denote that a vnode is fully initialized, consequently problems like the above are only found the hard way(tm).
Add rudimentary support for state transitions, which in particular allow to assert the vnode is not legally unlocked until its fate is decided (either construction finishes or vgone is called to abort it).
The new field lands in a 1-byte hole, thus it does not grow the struct.
Bump __FreeBSD_version to 1400077
Reviewed by: kib (previous version) Tested by: pho Differential Revision: https://reviews.freebsd.org/D37759
show more ...
|
|
Revision tags: release/12.4.0 |
|
| #
5b5b7e2c |
| 17-Sep-2022 |
Mateusz Guzik <[email protected]> |
vfs: always retain path buffer after lookup
This removes some of the complexity needed to maintain HASBUF and allows for removing injecting SAVENAME by filesystems.
Reviewed by: kib (previous versi
vfs: always retain path buffer after lookup
This removes some of the complexity needed to maintain HASBUF and allows for removing injecting SAVENAME by filesystems.
Reviewed by: kib (previous version) Differential Revision: https://reviews.freebsd.org/D36542
show more ...
|
| #
497240de |
| 19-Aug-2022 |
Mateusz Guzik <[email protected]> |
Retire clone_drain_lock
It is only ever xlocked in drain_dev_clone_events and the only consumer of that routine does not need it -- eventhandler code already makes sure the relevant callback is no l
Retire clone_drain_lock
It is only ever xlocked in drain_dev_clone_events and the only consumer of that routine does not need it -- eventhandler code already makes sure the relevant callback is no longer running.
Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D36268
show more ...
|
|
Revision tags: release/13.1.0 |
|
| #
8ea3ceda |
| 06-Feb-2022 |
Gordon Bergling <[email protected]> |
fs: fix a few common typos in source code comments
- s/quadradically/quadratically/ - s/persistant/persistent/
Obtained from: NetBSD MFC after: 3 days
|
| #
66c5fbca |
| 28-Jan-2022 |
Konstantin Belousov <[email protected]> |
insmntque1(): remove useless arguments
Also remove once-used functions to clean up after failed insmntque1(), which were destructor callbacks in previous life.
Reviewed by: markj Tested by: pho Spo
insmntque1(): remove useless arguments
Also remove once-used functions to clean up after failed insmntque1(), which were destructor callbacks in previous life.
Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D34071
show more ...
|
| #
2a7e4cf8 |
| 27-Jan-2022 |
Mateusz Guzik <[email protected]> |
Revert b58ca5df0bb7 ("vfs: remove the now unused insmntque1")
I was somehow convinced that insmntque calls insmntque1 with a NULL destructor. Unfortunately this worked well enough to not immediately
Revert b58ca5df0bb7 ("vfs: remove the now unused insmntque1")
I was somehow convinced that insmntque calls insmntque1 with a NULL destructor. Unfortunately this worked well enough to not immediately blow up in simple testing.
Keep not using the destructor in previously patched filesystems though as it avoids unnecessary casts.
Noted by: kib Reported by: pho
show more ...
|
| #
3af3e99c |
| 26-Jan-2022 |
Mateusz Guzik <[email protected]> |
devfs: stop using insmntque1
It adds nothing of value over insmntque.
|
|
Revision tags: release/12.3.0 |
|
| #
3ffcfa59 |
| 26-Nov-2021 |
Mateusz Guzik <[email protected]> |
vfs: add vop_stdadd_writecount_nomsync
This avoids needing to inspect the mount point every time.
Reviewed by: kib (previous version) Differential Revision: https://reviews.freebsd.org/D33125
|
| #
2b68eb8e |
| 01-Oct-2021 |
Mateusz Guzik <[email protected]> |
vfs: remove thread argument from VOP_STAT
and fo_stat.
|
| #
b4a58fbf |
| 01-Oct-2021 |
Mateusz Guzik <[email protected]> |
vfs: remove cn_thread
It is always curthread.
Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D32453
|
| #
243b324f |
| 03-May-2021 |
Mark Johnston <[email protected]> |
devfs: Avoid comparison with an uninitialized var in devfs_fp_check()
devvn_refthread() will initialize *devp only if it succeeds, so check for success before comparing with fp->f_data. Other devvn
devfs: Avoid comparison with an uninitialized var in devfs_fp_check()
devvn_refthread() will initialize *devp only if it succeeds, so check for success before comparing with fp->f_data. Other devvn_refthread() callers are careful to do this.
Reported by: KMSAN Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D30068
show more ...
|
|
Revision tags: release/13.0.0 |
|
| #
3bc17248 |
| 08-Feb-2021 |
Mateusz Guzik <[email protected]> |
devfs: fix use count leak when using TIOCSCTTY
by matching devfs_ctty_ref
Fixes: 3b44443626603f65 ("devfs: rework si_usecount to track opens")
|
|
Revision tags: release/12.2.0 |
|
| #
3b444436 |
| 11-Aug-2020 |
Mateusz Guzik <[email protected]> |
devfs: rework si_usecount to track opens
This removes a lot of special casing from the VFS layer.
Reviewed by: kib (previous version) Tested by: pho (previous version) Differential Revision: https:
devfs: rework si_usecount to track opens
This removes a lot of special casing from the VFS layer.
Reviewed by: kib (previous version) Tested by: pho (previous version) Differential Revision: https://reviews.freebsd.org/D25612
show more ...
|
| #
7b19bdda |
| 10-Aug-2020 |
Mateusz Guzik <[email protected]> |
devfs: save on spurious relocking for devfs_populate
Tested by: pho
|
| #
f8935a96 |
| 10-Aug-2020 |
Mateusz Guzik <[email protected]> |
devfs: use cheaper lockmgr entry points
Tested by: pho
|
| #
f9c13ab8 |
| 10-Aug-2020 |
Mateusz Guzik <[email protected]> |
devfs: use vget_prep/vget_finish
Tested by: pho
|
| #
d292b194 |
| 05-Aug-2020 |
Mateusz Guzik <[email protected]> |
vfs: remove the obsolete privused argument from vaccess
This brings argument count down to 6, which is passable without the stack on amd64.
|
| #
11c345b1 |
| 04-Jul-2020 |
Mateusz Guzik <[email protected]> |
devfs: fix a vnode use-after-free in devfs_ioctl
The vnode to be replaced was read with a shared lock, meaning 2 racing threads can find the same one.
While here clean it up a little bit.
|
| #
f2706588 |
| 21-Jun-2020 |
Thomas Munro <[email protected]> |
vfs: track sequential reads and writes separately
For software like PostgreSQL and SQLite that sometimes reads sequentially while also writing sequentially some distance behind with interleaved sysc
vfs: track sequential reads and writes separately
For software like PostgreSQL and SQLite that sometimes reads sequentially while also writing sequentially some distance behind with interleaved syscalls on the same fd, performance is better on UFS if we do sequential access heuristics separately for reads and writes.
Patch originally by Andrew Gierth in 2008, updated and proposed by me with his permission.
Reviewed by: mjg, kib, tmunro Approved by: mjg (mentor) Obtained from: Andrew Gierth <[email protected]> Differential Revision: https://reviews.freebsd.org/D25024
show more ...
|