vfs offset: fix assertion failure in face of racing ffofset and setfl locking
Both use the same 16 bit var to store their locked and waiters bits,
then this in file_v_unlock:
state = atomic_load_16(flagsp);
if ((state & lock_wait_bit) == 0 &&
atomic_cmpset_rel_16(flagsp, state, state & ~lock_bit))
return;
can fail if for example foffset is being unlocked while setfl is getting
locked.
Afterwards the code assumes there are blocked waiters on foffset.
Reviewed by: kib, markj
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D52915
vfs offset: fix assertion failure in face of racing ffofset and setfl locking
Both use the same 16 bit var to store their locked and waiters bits,
then this in file_v_unlock:
state = atomic_load_16(flagsp);
if ((state & lock_wait_bit) == 0 &&
atomic_cmpset_rel_16(flagsp, state, state & ~lock_bit))
return;
can fail if for example foffset is being unlocked while setfl is getting
locked.
Afterwards the code assumes there are blocked waiters on foffset.
Reviewed by: kib, markj
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D52915
Cirrus-CI: Use nproc instead of sysctl -n hw.ncpu
It is available on all supproted FreeBSD versions.
Sponsored by: The FreeBSD Foundation
(cherry picked from commit 5bba547a678beb280bf4080375f45b04ceb44fc5)
Cirrus-CI: Switch back to tzst packages, but use level 1
We previously used `PKG_FORMAT: tar` to avoid spending a lot of time in
zstd compression. Instead just set PKG_LEVEL to compression level 1,
which still produces packages that are much smaller than uncompressed
tarballs with only a small penalty in build time.
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D52858
(cherry picked from commit ae5914c0e4478fd35ef9db3f32665b60e04d5a6f)
unix/stream: repair SO_SNDTIMEO
The send operations are waiting on the peer's socket buffer, but we shall
use our timeout value. Provide a test for that.
Reported by: phk
Reviewed by: asomers
Differential Revision: https://reviews.freebsd.org/D53081
Fixes: d15792780760ef94647af9b377b5f0a80e1826bc
tests/multicast: fix test flakyness
The receiver is run as a background job, so we need a wait loop to
make sure it has been fully functional before launching sender.
Reported by: Siva Mahadevan <me svmhdvn.name>
PR: 290210
conf: enable TCP_HPTS_KTEST on debug builds
Enable the kernel build option TCP_HPTS_KTEST on debug builds and
disable it on non-debug builds.
PR: 290234
Reviewed by: Nick Banks, glebius
Sponsored by: Netflix, Inc.
Differential Revision: https://reviews.freebsd.org/D53108
filesystems/nbd-client-kmod: New port: Kernel NBD client for FreeBSD GEOM framework
FreeBSD Geom NBD Client is a Network Block Device (NBD) client for
the FreeBSD kernel GEOM framework.
The project consists of a kernel driver for the NBD GEOM class in
mod/ and a user library for the geom(8) control utility in lib/.
filesystems/kio-fuse: Update to 5.1.1
Release notes:
KIO FUSE 5.1.1 is the first release with officially stable support for Qt6/KF6.
With the next version, support for Qt5/KF5 will likely be dropped.
It's encouraged to build KIO FUSE with the same Qt major version as Dolphin,
so that they share KIO protocol implementations.
Compared to v5.1.0, the following changed:
- rmdir no longer deletes non-empty directories (https://bugs.kde.org/482902)
- Fix that Qt 6 applications falsely report that an open file that has been
deleted in the virtual filesystem still exists by reporting st_nlink = 0.
- Fix reporting of file/directory ownership when using local KIO protocols
with KIO 6
- Fix that the event loop got stuck waiting for FUSE events on FreeBSD >= 13
(before, setting O_NONBLOCK only worked by accident:
https://bugs.freebsd.org/265736#c5)
[16 lines not shown]
lang/go-devel: move portscout to master port
Implements PORTSCOUT for all lang/go1* ports.
PR: 290231
Fixes: c6297af4eff5e120d01d0c86c2d25d49418f389e "lang/go12[45]: silence portscout"
www/angie-module-auth-spnego: Fix build on FreeBSD 15.0+
Switch from USES=gssapi to USES=gssapi:mit.
PR: 290194
MFH: 2025Q4
(cherry picked from commit d48c3917b3f8cbfcf323857eb18a6cd94ba9df30)
deskutils/gnome-shell-extension-openweather: Remove expired port
2025-10-13 deskutils/gnome-shell-extension-openweather: Superseded by deskutils/gnome-shell-extension-simple-weather