NAS-140167 / 26.0.0-BETA.2 / Fix TNC sync_interface_ips empty IPs and repeated concurrent calls (by sonicaj) (#18590)
This commit fixes an issue where sync_interface_ips could send empty IPs
to the TNC account-service (causing 400 errors) and where concurrent
netlink events would each independently hit the TNC API with the same
payload.
When the HTTP call failed due to empty IPs, the cache was never
populated, so every subsequent netlink event retried the same failing
call — creating an infinite retry storm. Additionally, a single DHCP
renewal would fire 3-5 netlink events, each scheduling a call_later(5),
all passing the cache check simultaneously, and all hitting the TNC API
concurrently with identical payloads.
An asyncio.Lock serializes concurrent sync_interface_ips calls so only
the first performs the HTTP sync while subsequent calls hit the cache
and return early. An empty IP guard skips the HTTP call when no IPs are
available (static + dynamic combined) but still caches the result to
prevent retry storms.
[5 lines not shown]
NAS-140167 / 27.0.0-BETA.1 / Fix TNC sync_interface_ips empty IPs and repeated concurrent calls (#18448)
This commit fixes an issue where sync_interface_ips could send empty IPs
to the TNC account-service (causing 400 errors) and where concurrent
netlink events would each independently hit the TNC API with the same
payload.
When the HTTP call failed due to empty IPs, the cache was never
populated, so every subsequent netlink event retried the same failing
call — creating an infinite retry storm. Additionally, a single DHCP
renewal would fire 3-5 netlink events, each scheduling a call_later(5),
all passing the cache check simultaneously, and all hitting the TNC API
concurrently with identical payloads.
An asyncio.Lock serializes concurrent sync_interface_ips calls so only
the first performs the HTTP sync while subsequent calls hit the cache
and return early. An empty IP guard skips the HTTP call when no IPs are
available (static + dynamic combined) but still caches the result to
prevent retry storms.
[flang][OpenMP] Remove misplaced comment, NFC
Remove the seemingly random comment listing clauses allowed on a DO
construct. The nearby code has nothing to do with clauses.
[Support] Move `KnownFPClass` inference from `KnownBits` to Support (#189414)
Move logic for inferring `KnownFPClass` from known bits into the Support
library so the logic may be used e.g., for analogous value tracking
functions in SelectionDAG.
[PowerPC] Respect chain operand for llvm.ppc.disassemble.dmr lowering (#188334)
Fix ignoring the input chain when turning llvm.ppc.disassemble.dmr into
a store.
[fuzzer] Use LIBCXX_ABI_UNSTABLE for hermetic libc++ (#189096)
This build of libc++ never interacts with any other, so
it can always use the latest and best ABI.
[mlir][python] Disable pytype not-yet-supported error on Buffer import (#189440)
For pyhon versions <3.12, pytype complains that:
```
error: in <module>: collections.abc.Buffer not supported yet [not-supported-yet]
from collections.abc import Buffer as _Buffer
```
Since it seems like this code intends to support <3.12, disabling the
type error on this line.
[MCA] Use LLVM_DEBUG instead of direct NDEBUG check (NFC) (#189389)
Use the conventional multiline `LLVM_DEBUG` macro for a
debug-printing-only code block, instead of unwrapping a direct `NDEBUG`
check.
[clang-repl] Fix C89 incompatible keywords (#189432)
Restrict and inline keywords are removed for C89 interpreter since these
keywords caused fail at runtime preamble.
Fixes #189088
[lldb] In python tests, call dumpSessionInfo(). (#188859)
Updates the lldb python test suite to ensure we call dumpSessionInfo()
in the test result's stopTest() method. This will ensure that we get the
session info dumped for all tests, even those that don't have an
explicit call to dumpSessionInfo() in the test case.
Additionally, I updated the lldb-dap test case to mark the '-dap.log' as
a log file, which will be recorded in the test output on failure.
Here is an example test run with a failure:
```
PASS: LLDB (build/bin/clang-arm64) :: test_step (TestDAP_step.TestDAP_step)
FAIL: LLDB (build/bin/clang-arm64) :: test_step_over_inlined_function (TestDAP_step.TestDAP_step)
Log Files:
- build/lldb-test-build.noindex/tools/lldb-dap/step/TestDAP_step/Failure.log
- build/lldb-test-build.noindex/tools/lldb-dap/step/TestDAP_step/Failure-dap.log
======================================================================
[10 lines not shown]
[LifetimeSafety] Track origins for lifetimebound calls returning record types (#187917)
- Move `hasOrigins` from free function to `OriginManager` method
- Add pre-scan (`collectLifetimeboundOriginTypes`) to register return
types of `[[clang::lifetimebound]]` calls before fact generation
- Generalize copy/move constructor origin propagation from lambda-only
to all types with `isDefaulted()` and `hasOrigins()` guard
- `isDefaulted()` is a heuristic: it avoids false positives from
user-defined copies with opaque semantics, but can still false-positive
when a defaulted outer copy invokes a user-defined inner copy that
breaks the propagate chain. See
`nested_defaulted_outer_with_user_defined_inner`
- Guard `operator=` origin propagation: pointer-like types always
propagate; other tracked types only when defaulted
- Defer `ThisOrigins` construction until after the pre-scan to avoid
origin list depth mismatch
- Fix `IsArgLifetimeBound` to exclude constructors from the
instance-method branch (latent bug exposed by this change)
[6 lines not shown]
editors/emacs: Unbreak build after devel/tree-sitter update
When devel/tree-sitter was updated from version 0.25.10 to 0.26.7 in
19fa3d59c58, editors/emacs failed to build due to a breaking ABI change
introduced in tree-sitter 0.26.
Fix the build by patching Emacs to call tree-sitter's new function,
ts_language_abi_version, rather than the old ts_language_version. Both
functions have the same signature.
PR: 294144
Reported by: russo at bogodyn.org
Sponsored by: The FreeBSD Foundation
documentation: Bourne shell -> POSIX shell
The FreeBSD shell is a POSIX compatible shell. It evolved over several
decades from the Almquist shell, which was preceeded a decade before
that by the Bourne shell. Most readers today have never seen a Bourne
shell. If someone wants to learn to use our shell, they need to look for
tutorials on the POSIX shell. Align descriptions through out the tree
with this reality, consistent with it's manual and common parlance.
Reviewed by: mhorne, Artem Bunichev <tembun at bk.ru>
Differential Revision: https://reviews.freebsd.org/D56054
[offload][lit] Disable tests failing on Intel GPU (#189422)
Fix some tests causing hangs, one fail, and a few XPASSing. We are
seeing new passes/fails because of the named barrier changes being
merged.
Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
[flang][OpenACC] Add semantic check for GOTO branching out of compute constructs (#189385)
Per OpenACC spec 2.5.4, branching out of `parallel`/`serial`/`kernels`
constructs is not allowed. Add a GOTO check to `NoBranchingEnforce` that
collects labels within the construct block and flags GOTOs targeting
labels outside. In-region GOTOs are allowed.
The check applies only to compute constructs (`parallel`, `serial`,
`kernels`), not to data constructs where GOTO out is valid.