NAS-141224 / 26.0.0-RC.1 / Let TrueNAS Connect self-heal after deregistration (by sonicaj) (#19085)
This commit fixes an issue where a TrueNAS Connect certificate could not
be deleted (even with force) because TNC stayed wedged in a renewal
state and never auto-unset itself. The heartbeat is the only thing that
unsets TNC and removes its cert when it gets a 401, but its start guard
only allowed the CONFIGURED state while the loop it guards ran across
all configured states, so it died immediately in
CERT_RENEWAL_IN_PROGRESS/SUCCESS/FAILURE and never saw the 401 that
signals deregistration.
We widen the guard to match the loop, add CERT_RENEWAL_FAILURE to the
configured states (with a boot-time renewal retry), and surface a 401
from the renewal check into the same unset path instead of swallowing it
as "renewal not needed".
Original PR: https://github.com/truenas/middleware/pull/19079
Co-authored-by: Waqar Ahmed <waqarahmedjoyia at live.com>
[AMDGPU][GISEL] Adding new reg bank select rules for G_DYN_STACKALLOC (#200369)
Add register bank selection and legalization support for
G_DYN_STACKALLOC in the new RegBankLegalize framework.
[lldb][Windows] Fix ECHO_TO_FILE/ECHO_APPEND_FILE (#202968)
The Windows recipes for these macros were printf "%s\n" $(1). The
callers wrap content in single quotes (for the POSIX printf), but the
test recipes run under cmd.exe on Windows, which keeps the single quotes
literal and word-splits on spaces, and the bundled printf additionally
mangles backslashes and spaces. The result is garbage generated files
(e.g. a modulemap whose first line is 'module, or a truncated SDK path
from a "Program Files" directory).
Write the file with cmd's echo after stripping the callers' single
quotes. echo runs in the recipe shell, so unlike GNU make's $(file ...)
it still works after a preceding MKDIR_P in the same recipe.
This is a reland of https://github.com/llvm/llvm-project/pull/202612
which add the changes in the wrong if/else branch.
rdar://179218545
[flang-rt][cmake] Fix Windows build with CMAKE_Fortran_SIMULATE_ID (#202981)
The PR #198205 sets CMAKE_Fortran_SIMULATE_ID to "GNU", since Flang has
no alternative driver such as an equivalent to clang-cl. But it breaks
the Windows build with
```
LINK : warning LNK4044: unrecognized option '/lpsapi'; ignored
LINK : warning LNK4044: unrecognized option '/lshell32'; ignored
LINK : warning LNK4044: unrecognized option '/lole32'; ignored
LINK : warning LNK4044: unrecognized option '/luuid'; ignored
LINK : warning LNK4044: unrecognized option '/ladvapi32'; ignored
LINK : warning LNK4044: unrecognized option '/lws2_32'; ignored
LINK : warning LNK4044: unrecognized option '/lntdll'; ignored
LINK : warning LNK4044: unrecognized option '/ldelayimp'; ignored
```
The reason is interesting. With CMAKE_Fortran_SIMULATE_ID=GNU, CMake
will include the Windows-GNU.cmake
platform file. That file overwrites CMAKE_LINK_LIBRARY_FLAG with
[16 lines not shown]
net/cloudflared: new plugin for Cloudflare Tunnel integration (#5429)
Wraps the net/cloudflared FreeBSD port to manage the cloudflared daemon
via the standard OPNsense service control interface.
[Github][RFC] Add workflow to diff codegen on llvm-test-suite (#190010)
A common task when reviewing PRs in the LLVM subproject is checking out
the PR locally, building it, running it on some benchmarks e.g.
llvm-test-suite, and comparing the codegen against some known version.
The process is fairly laborious so this PR adds a GitHub workflow to
automate it. It's triggered by commenting "/test-suite" on a PR. The
workflow will kick off, build clang with the head and base of the PR,
build the benchmarks in llvm-test-suite for several configurations with
each version of clang, compute the diff in the output assembly via the
[tdiff.py
script](https://github.com/llvm/llvm-test-suite/blob/main/utils/tdiff.py),
and then report back with the diffs in a comment.
Here's an example on my fork where you can see the diff of a codegen
change in the RISC-V backend:
https://github.com/lukel97/llvm-project/pull/7#issuecomment-4283315532
[26 lines not shown]
[clang][StaticAnalyzer] Optimize standard-library summaries for size (#202662)
StdLibraryFunctionsChecker::initFunctionSummaries is a large one-time
initialization routine. Its initializer-list construction is cold, but
optimizing it for speed causes extensive inlining and repeated
construction code in the binary.
Mark initFunctionSummaries with LLVM_ATTRIBUTE_MINSIZE so the optimizer
keeps the existing table construction out of line and selects
size-oriented code generation. Analyzer behavior and the runtime summary
representation are unchanged.
In the LLVM 22 Bazel build, standalone clang decreases from 130,098,288
to 130,015,696 bytes (-82,592), and stripped clang decreases from
108,098,128 to 107,999,520 bytes (-98,608).
Work towards #202616
AI tool disclosure: Co-authored with OpenAI Codex.
Reapply "[clang][deps] Add in-flight query caching to `DependencyScanningFilesystemSharedCache`" (#202804) (#202881)
Revert the revert in https://github.com/llvm/llvm-project/pull/202804,
and add an additional guard for the test which is not applicable on all
platforms.
[mlir][acc] Add ignore-default-none option to ACCImplicitData (#202442)
ACCImplicitData currently skips implicit data mapping when a visible
default(none) clause is present, per the OpenACC rule that no implicit
data attributes apply in that case.
That default is reasonable when a frontend already verifies
default(none) and ensures all user variables have an explicit data
clause. Without that checking, generating implicit mappings would risk
silently mapping user variables that should have been explicit under
default(none).
There are still cases where implicit mapping is needed even with
default(none):
- The frontend reports default(none) violations as warnings and
compilation continues, so some user variables may reach this pass
without explicit data clauses and still need implicit mapping.
- Compiler-generated temps or interior pointers may be live-in to the
region and still require implicit mapping even when all user variables
[5 lines not shown]
While grouped sessions are being killed, it can leave session which are
not really useful as targets (no active pane or current window) in the
tree. Make cmd_find_best_session skip these. GitHub issue 5167.
powerpc/booke: Add watchdog driver
The Book-E watchdog is effectively a state machine based around an AND
mask of the timebase register. A single bit (0-63) is watched in the
timebase register, and when it transitions (by counting *or* by
programmatically setting) an exception is triggered. The first
exception triggers a core interrupt. The second is programmable.
In our case, we panic on the first and reset on second.
watchdog: Fix a couple type issues
* Force the type of the literal `1` passed to nstosbt() to ensure it's a
64-bit type (or larger). Otherwise it gets inconveniently typed to
int, resulting in truncation.
* Use `flsll()` when converting sbt to power-of-2-nanoseconds to fix
32-bit compatibility.
PR: 292616
Obtained from: Hewlett Packard Enterprise
Fixes: 26d6617f3 ("watchdog: Convert to using sbintime_t format")
MFC after: 3 days
[MLIR][Affine] Simplify affine.for bounds by pruning redundant expressions via ValueBoundsConstraintSet (#199032)
This PR introduces a new pattern `SimplifyAffineForBoundMap` to simplify
multi-result lower and upper bounds of `affine.for` loops by pruning
redundant expressions leveraging `ValueBoundsConstraintSet`. This PR
addresses the limitation where the built-in folder of `affine.for` can
only handle constant bounds.
firmware: stop buffering in sed
Since cmd_output was made the generic filter for subscriptions
the update log showed signs of excessive buffering. This brings
it back to where it was and also improves the old read case.
(cherry picked from commit 5de581cd4416d6c068270994981db726045e88be)