ffs: do not return ESTALE on attempt to ffs_unotovp() on unlinked inode
The consequences are:
- for nfs exports and fhopen(2), unlinked but still referenced inodes
are accessible
- for ffs_vput_pair() with unlock_vp = false, spurious ESTALE is not
returned when the inode is still alive but unlinked
Note that tmpfs does not return ESTALE for the unlinked nodes.
The same behavior is claimed for Linux in
https://github.com/openzfs/zfs/issues/18699
Reviewed by: rmacklem
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D57982
acpi: ignore wake button press replayed by firmware on resume
Some firmware delivers the power or sleep button press that woke the
system as an ordinary button press (Notify 0x80) shortly after resume,
rather than as the wakeup notification (Notify 0x02) the ACPI
specification requires for a button that is also a wake source.
On affected machines (e.g. the Framework Laptop 12, Intel Raptor Lake-P)
the power button is a control-method device behind the embedded
controller. The EC latches the key press that woke the system across the
sleep transition and flushes it through its normal _Qxx query path as
soon as it is reinitialized on resume. The replayed press is
indistinguishable from a genuine one, so the kernel honors it as a fresh
suspend request and the machine suspends again immediately after waking;
it cannot be kept awake with the button.
The event cannot be filtered at its source: it arrives over the same EC
query path that also carries legitimate events (lid, AC, thermal,
battery), so suppressing the drain would lose real notifications.
[24 lines not shown]
jail: prevent a race between jail_attach in different threads
Attaching to a jail changes its root directory and its process
credentials. These operations both require unlocking the jail, and also
need allprison_lock unlocked. That means that if two threads are trying
to attach to different jails at the same time, it's possible for the
process to end up with one jail's root directory but the other jail's
credentials.
Solve this by forcing the process into single-threaded mode during
system calls that attach to a jail (jail_attach, jail_attach_jd, and
sometimes jail_set).
Reviewed by: kib, markj
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D57858
devel/jujutsu: update to version 0.43.0
This update adds the "jj run" command and contains a number of new
features and a few bug fixes.
For the complete list of changes see:
https://github.com/jj-vcs/jj/releases/tag/v0.43.0
databases/cego: 2.54.29 -> 2.54.38, devel/lfcbase: 1.23.5 -> 1.23.6
lfcbase:
- compiler warnings fixed for class Chain::toUpper and toLower
( dynamic wText allocation )
cego:
- procedure cache
- Added admin command set maxpagedelete to set up maximum number
of pages marked for delete before forcing a checkpoint.
- CegoQueryManager: _authUser has to be stored locally,
otherwise setUser method looses user information, if auth was not enabled
- new admin command object usage to show usage of tableset objects
to detect any usage leaks and to get an overview of objects in
use by running database threads
- backupManager: indicate number of logs to recover up to crash
for the corresponding backup id.
- Fix added in CegoRecoveryManager::recoverCurrentTransactionLog
- Added list transaction command
[5 lines not shown]