NAS-140229 / 26.0.0-BETA.2 / Call dlm.reset_active when peer disconnects (by bmeagherix) (#18434)
Previously reset_active was only called when STANDBY reconnected,
leaving DLM RSBs in an inconsistent state for the duration of the
outage. Calling it immediately when the peer goes down ensures DLM
recovery runs and repairs pending lock lookups before SCST issues new
dlm_lock requests during logout_all.
Three guards prevent acting in the wrong context: only runs on MASTER;
skips if the peer's DLM port is still reachable (middleware-only
restart); skips if we have logged-in extents (we are STANDBY or
mid-transition and the failover event is already handling cleanup).
Original PR: https://github.com/truenas/middleware/pull/18423
Co-authored-by: Brian M <brian.meagher at ixsystems.com>
[ELF,test] Add test for -u error message referencing object file (#185938)
When -u creates an undefined symbol and a relocatable file has a weak
reference, the error message references the relocatable file, not
<internal>.
NAS-140229 / 26.0.0-BETA.1 / Call dlm.reset_active when peer disconnects (by bmeagherix) (#18433)
Previously reset_active was only called when STANDBY reconnected,
leaving DLM RSBs in an inconsistent state for the duration of the
outage. Calling it immediately when the peer goes down ensures DLM
recovery runs and repairs pending lock lookups before SCST issues new
dlm_lock requests during logout_all.
Three guards prevent acting in the wrong context: only runs on MASTER;
skips if the peer's DLM port is still reachable (middleware-only
restart); skips if we have logged-in extents (we are STANDBY or
mid-transition and the failover event is already handling cleanup).
Original PR: https://github.com/truenas/middleware/pull/18423
Co-authored-by: Brian M <brian.meagher at ixsystems.com>
NAS-140229 / 25.10.2.2 / Call dlm.reset_active when peer disconnects (by bmeagherix) (#18432)
Previously reset_active was only called when STANDBY reconnected,
leaving DLM RSBs in an inconsistent state for the duration of the
outage. Calling it immediately when the peer goes down ensures DLM
recovery runs and repairs pending lock lookups before SCST issues new
dlm_lock requests during logout_all.
Three guards prevent acting in the wrong context: only runs on MASTER;
skips if the peer's DLM port is still reachable (middleware-only
restart); skips if we have logged-in extents (we are STANDBY or
mid-transition and the failover event is already handling cleanup).
Original PR: https://github.com/truenas/middleware/pull/18423
Co-authored-by: Brian M <brian.meagher at ixsystems.com>
krb5: Include <features.h> on Linux so __GLIBC__ can be checked
__GLIBC__ is not pre-defined by the toolchain, it comes from features.h,
so we need to make sure that's included by this point.
Fixes: 4dd2b869cd07 ("krb5: Fix -Wint-conversion when bootstrapping on GNU/Linux")
(cherry picked from commit 34e7a57673c9730ee5d1f7ebb07e152567bd8e0b)
krb5: Fix -Wint-conversion when bootstrapping on GNU/Linux
This shows up in GitHub Actions as a warning, and some compilers can
default to it being an error.
(cherry picked from commit 4dd2b869cd078ed6f40c42d1ef429222da16a58f)
NAS-140229 / 27.0.0-BETA.1 / Call dlm.reset_active when peer disconnects (#18423)
Previously reset_active was only called when STANDBY reconnected,
leaving DLM RSBs in an inconsistent state for the duration of the
outage. Calling it immediately when the peer goes down ensures DLM
recovery runs and repairs pending lock lookups before SCST issues new
dlm_lock requests during logout_all.
Three guards prevent acting in the wrong context: only runs on MASTER;
skips if the peer's DLM port is still reachable (middleware-only
restart); skips if we have logged-in extents (we are STANDBY or
mid-transition and the failover event is already handling cleanup).
multimedia/mpv: Disable YTDLP option by default
The www/yt-dlp dependency now requires npm and deno as dependencies (via www/py-yt-dlp-ejs). This pulls in a bunch of build and run
dependencies which were not previously required.
There are two main downsides to this:
1. Exploding build times
2. Installing multimedia/mpv on a system now also installs a javascript interpreter which violates POLA and is generally not desirable.
Therefore, we're disabling the YTDLP option by default.
PR: 293736
Approved by: makc (multimedia)
[lldb] Catch missing calls to SystemLifetimeManager::Initialize (#185536)
We already catch missing calls to SystemLifetimeManager::Terminate, but
not for Initialize. This adds the missing assert and also makes sure it
behaves correctly when initializing and terminating more than once,
which is now supported.
ports-mgmt/pkg-devel: update to 2.6.99.1
Changes:
- greatly improve the test coverage
- add support for trigger per package (pre installation, post installation)
- fix info export wrong json for multiple packages
- solver: many fixes preventing useless extra reinstallation
- jobs: prevent install -f from deleting packages
- upgrade: prevent rdeps discovery explosion
- fix crash when using external merge tool
- fix ctrl-c during download not really killing pkg
- lots of code cleanup
- prevent running in jail if fflages are involved and the jail does not allow them
- prevent running if secure_level will block them
- improve performance by adding new indexes
- don't try anymore to upgrade the DB if it is readonly
- only open the db RW if needed
- fix pkg -N with WAL
- repositories: add per repo ssh_args
[8 lines not shown]
[HLSL][SPIRV] Update reversebits codegen for half types (#184936)
In order to make codegen compatible with DXC and pass spirv validation,
this patch updates the codegen for half types following the same codegen
as DXC.
fix: https://github.com/llvm/llvm-project/issues/183611
[SamplePGO] Add a flag to disable salvage-unused-profile for large modules. (#185354)
Added a command-line option, `-salvage-unused-profile-max-functions` to
prevents performance degradation during compilation when processing
modules with an extremely large number of functions, where salvaging
unused profiles becomes prohibitively expensive.
[SLP]Do not request the last instruction for first buildvector nodes with no state
If looking for the match of the gather/buildvector node and its root is
a first node, which also a buildvector/gather, and has no state, we
should skip the analysis for such nodes to prevent a compiler crash
Fixes #185851
[TableGen] Fix MUL case in DAG default operands test (#185847)
The checks have been unused forever. This was an oversight in the patch
that introduced this test: https://reviews.llvm.org/D63814
Also fix the checks to match the actual output. This looks like another
oversight in the original patch, presumably because the checks were
never actually tested.
[HLSL][SPIR-V] Add resource load level intrinsics and SPIR-V backend support (#185707)
Adds the intrinsics resource_load_level intrinic for DXIL and SPIR-V. It
will be used to load a value from an specific location in the image at
the given mip level. It will be used to implement the Texture Load and
mips[][] methods.
Assisted-by: Gemini
[Docs] Remove references to IWG in GitRepositoryPolicy (#185919)
The IWG has not been a thing for several years now. Adjust the docs to
point to the infrastructure area team who is now responsible for making
these decisions.
usb: umass: add SCSIEJECT quirk and fix RTW8821CU_CD (USB mode switch)
Several Realtek (and lots other) USB dongles present themselves as
CDROM device first. Upon eject they do a mode switch and suddenly
are a different kind of device (sometimes even with different IDs),
e.g., a wireless dongle.
In order to avoid the CDROM stage and rather than adding the quirk
handling to more drivers, add support to umass and if enabled
automatically eject the "CDROM" to make it the real device.
Longer-term some other drivers could stop using their hand-rolled
support for this. It is unclear as-to how much we need the list of
(eject) quirks from u3g here, or if these are very specific to that
kind of devices.
Sponsored by: The FreeBSD Foundation
Fixes: b3b6a959c85a, 9c0cce328363
Reviewed by: imp
[3 lines not shown]
LinuxKPI: 802.11: lkpi_sta_auth_to_scan() fail graciously on lsta == NULL
Usually after a firmware crash, we see reports of crashes in
lkpi_sta_auth_to_scan(). One of the last ones was in the PR
mentioned below.
These crashes are often attributed as the problem while the real
problem happened before.
At this point try avoid the NULL pointer and to fail graciously if
lvif->iv_bss (lsta) is no longer set. This way users have a chance
to possibly recover using netif restart wlan0 rather than dealing
with a panic.
See if this helps us to better track down the original problems
rather than the follow-up crash.
On a debug kernel the KASSERT should normally have caught that
condition as well but we see panics on page faults were the log
[8 lines not shown]
net80211: fix VHT160/80P80/80 chanwidth selection in the "40-" case
Depending on the base channel ni_vht_chan2 - ni_vht_chan1 can be
negative. Apply abs() as indicated in the comments right above
| CCFS1 - CCFS0 | = 8 or > 16
in order to fix the channel width selection.
Sponsored by: The FreeBSD Foundation
PR: 293645
Fixes: 4bf049bfeefd9
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D55717
(cherry picked from commit 6cfd2b93e68061c7831016b91c2e308d01658764)
[DWARFLinker] Fix DW_AT_LLVM_stmt_sequence attributes patched to wrong offsets (#178486)
This fixes a bug where `DW_AT_LLVM_stmt_sequence` attributes in dSYM
files were pointing to invalid offsets in the `.debug_line` section.
These attributes must point to `DW_LNE_set_address` opcodes (which mark
sequence starts), but after dsymutil reorders line table sequences by
address, the original row indices no longer correspond to sequence
starts in the output.
The root cause is that when sequences get reordered or merged, a row
that was originally a sequence start may end up in the middle of a
different sequence in the output. The old code was mapping the original
row index directly to its output position, but that output position
might not have a `DW_LNE_set_address` opcode anymore.
The fix builds a mapping from each output row to its containing
sequence's start row. When patching `DW_AT_LLVM_stmt_sequence`, we now:
1. Find the output row corresponding to the original row
2. Look up which sequence that output row belongs to
[22 lines not shown]