FreeNAS/freenas 707c059src/middlewared/middlewared/api/v26_0_0 crypto_cert_profiles.py, src/middlewared/middlewared/api/v27_0_0 crypto_cert_profiles.py

Address reviews
DeltaFile
+0-3src/middlewared/middlewared/api/v27_0_0/crypto_cert_profiles.py
+0-3src/middlewared/middlewared/api/v26_0_0/crypto_cert_profiles.py
+0-62 files

FreeNAS/freenas e8f1c1csrc/middlewared/middlewared/api/v26_0_0 crypto_cert_profiles.py, src/middlewared/middlewared/api/v27_0_0 crypto_cert_profiles.py

Split CSR profiles by certificate role

This commit adds changes to replace the two HTTPS CSR profiles with four role specific ones covering TLS server and TLS client use, in both RSA and EC. Both old profiles asked for SERVER_AUTH and CLIENT_AUTH together, which Google Trust Services now rejects outright with badCSR. Once you can no longer name both purposes in one request, a single shape stops serving both roles, since a certificate is only usable for the purposes its extended key usage names.

The server profiles now request SERVER_AUTH alone, which is what Google and the Chrome root programme want by 2027 and what relying parties like Apple expect to find on a TLS server certificate, and the client profiles request CLIENT_AUTH so mutual TLS against syslog, LDAP and KMIP has something usable. This also drops the RSA keyAgreement bit the baseline requirements forbid, makes the EKU non critical, and removes the dead lifetime key that certificate.create would have rejected. The catalogue is declared in v26 and v27 both, since v26 is the current version on the stable branch, so backporting means keeping the v26 hunk and omitting the v27 one; to_previous on v26 is what keeps older API clients on the profiles they already know.
DeltaFile
+144-55src/middlewared/middlewared/api/v26_0_0/crypto_cert_profiles.py
+128-55src/middlewared/middlewared/api/v27_0_0/crypto_cert_profiles.py
+54-0tests/api2/test_certificate_create_types.py
+9-4src/middlewared/middlewared/plugins/webui/crypto.py
+1-0tests/api2/test_legacy_api.py
+336-1145 files

LLVM/project feabb30llvm/lib/CodeGen MachineScheduler.cpp, llvm/test/CodeGen/SystemZ postra-sched-filter.mir

[MISched] Apply debug filters before starting a block (#222270)

Apply the `misched-only-func` and `misched-only-block` filters before
calling `startBlock`. This avoids entering a target scheduling strategy
for a filtered block without a matching `finishBlock`/`leaveMBB` call.

Add a SystemZ post-RA scheduler regression that checks a filtered block
does not contribute hazard-recognizer state.

Split from #221984 in response to review.
DeltaFile
+21-0llvm/test/CodeGen/SystemZ/postra-sched-filter.mir
+2-3llvm/lib/CodeGen/MachineScheduler.cpp
+23-32 files

FreeNAS/freenas d122ebctests/api2 test_s3_config.py

Address reviews
DeltaFile
+23-15tests/api2/test_s3_config.py
+23-151 files

LLVM/project cdf59b3flang/test/Lower/OpenMP threadset.f90, flang/test/Semantics/OpenMP threadset-clause-v60.f90

[Flang][OpenMP] Add lowering and translation for the threadset clause (#215513)

Adds Flang lowering, and LLVM IR translation for the OpenMP 6.0 `threadset` clause (spec 14.8) on `task` and `taskloop`.

- Add a `ThreadsetPolicy` enum (`omp_pool`/`omp_team`) and clause on `omp.task` and `omp.taskloop.context`, lowered from Flang.
- Translate `threadset(omp_pool)` to the free-agent task flag (`0x80`); `omp_team` leaves it unset, matching clang.
- Add semantics, lowering, and translation tests.

Related: https://github.com/llvm/llvm-project/pull/135807,
https://github.com/llvm/llvm-project/pull/144409,
https://github.com/llvm/llvm-project/pull/169856
DeltaFile
+50-0mlir/test/Target/LLVMIR/openmp-taskloop-threadset.mlir
+41-0mlir/test/Dialect/OpenMP/ops.mlir
+38-0flang/test/Semantics/OpenMP/threadset-clause-v60.f90
+37-0flang/test/Lower/OpenMP/threadset.f90
+16-14mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
+27-0mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
+209-1412 files not shown
+303-3518 files

LLVM/project 069ef0eclang/docs ReleaseNotes.md

Add release note for #184718.
DeltaFile
+1-0clang/docs/ReleaseNotes.md
+1-01 files

LLVM/project 7fe3637llvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV and-negpow2-cmp.ll

[RISCV] Fix infinite DAGCombine loop with SETCC and SIGN_EXTEND_INREG (#221593)

We generalized (X & -(1 << C1) & 0xffffffff) == C2 << C1 using `sraiw`.
The combine generates a `SIGN_EXTEND_INREG` when simplifying.

However, when C1 is 0 and the sign bit (bit 31) of X is already known to
be zero, `DAGCombiner` sees that `SIGN_EXTEND_INREG` is semantically
equivalent to `AND X, 0xFFFFFFFF` (zext). Because `DAGCombiner`
considers `AND` to be more canonical than `SIGN_EXTEND_INREG` in this
context, it immediately reverts the node back to `AND`.

This caused an infinite DAGCombine loop. This patch disables the folding
when the C1 is zero. That case is covered by a later combine that already
checks if bit 31 is known to be zero.

Fixes: https://github.com/llvm/llvm-project/issues/221521
(cherry picked from commit f9a8dec9496fea7c55f591a66a64dbcdc085fc2d)
DeltaFile
+34-0llvm/test/CodeGen/RISCV/and-negpow2-cmp.ll
+1-1llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+35-12 files

LLVM/project f1245b6llvm/lib/CodeGen AggressiveAntiDepBreaker.cpp, llvm/test/CodeGen/Hexagon anti-dep-partial.mir

[CodeGen] Skip pseudo instructions in AggressiveAntiDepBreaker (#222271)

`ScheduleDAGInstrs` does not create SUnits for debug or pseudo
instructions. The aggressive anti-dependency breaker only skipped debug
instructions, so encountering a pseudo such as `PSEUDO_PROBE`
dereferenced a null SUnit.

Skip both debug and pseudo instructions and add a Hexagon regression
covering the existing aggressive anti-dependency path with legacy and
new machine pass managers.

Split from #221984 in response to review.
DeltaFile
+4-0llvm/test/CodeGen/Hexagon/anti-dep-partial.mir
+1-1llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp
+5-12 files

FreeNAS/freenas d76e6c2src/middlewared/middlewared/api/v26_0_0 s3.py, src/middlewared/middlewared/api/v27_0_0 s3.py

Gate S3 auditing on appliance hardware

This commit adds changes to decide whether the S3 service audits requests from the hardware class rather than from the license, so it matches the gate the kernel audit handler already uses -- both halves of the audit trail land in the same database, so both have to answer to the same thing. The check is renamed audit_supported since it no longer reads a license, and the validation messages and API field descriptions say appliance hardware instead of Enterprise license.
DeltaFile
+19-8src/middlewared/middlewared/plugins/truenas_s3/config.py
+5-5tests/api2/test_s3_config.py
+5-3src/middlewared/middlewared/plugins/truenas_s3/bucket_crud.py
+2-2src/middlewared/middlewared/etc_files/truenas_s3/buckets.conf.mako
+2-2src/middlewared/middlewared/api/v27_0_0/s3.py
+2-2src/middlewared/middlewared/api/v26_0_0/s3.py
+35-226 files

LLVM/project 36ede5cclang-tools-extra/clang-tidy ClangTidyOptions.cpp, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Normalize windows line filter paths (#217038)

`git | clang-tidy-diff.py` emits line-filter paths with forward slashes,
while Windows compilation databases use a mix of forwards and backwards
slashes. These paths are then silently rejected (and no report is
emitted).

Reproduce on windows via:
```
git.exe diff -U0 main -- . | python clang-tidy-diff.py -p1 -path .\build"
```

Git will produce a path like:
```
my/source/file.cpp
```

The compilation database has files with entries like this:
```

    [18 lines not shown]
DeltaFile
+70-0clang-tools-extra/unittests/clang-tidy/ClangTidyDiagnosticConsumerTest.cpp
+10-10clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
+8-8clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-diff.cpp
+10-0clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
+6-1clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
+5-0clang-tools-extra/docs/ReleaseNotes.rst
+109-191 files not shown
+113-207 files

LLVM/project e01829dclang/include/clang/Sema Overload.h, clang/lib/Sema SemaOverload.cpp

[Clang] Avoid unnecessary overload resolution when building RecoveryExpr (#222296)

When overload resolution fails, we tried RecoveryCallExpr which
ended up performing duplicate overload resolutions, where the template
argument deduction can be expensive.

This patch removes those 'known' invalid overload candidates before
RecoveryCallExpr.
DeltaFile
+33-24clang/lib/Sema/SemaOverload.cpp
+4-0clang/include/clang/Sema/Overload.h
+37-242 files

LLVM/project e32ffd8clang/include/clang/CIR/Dialect/IR CIRDialect.td CIRAttrs.td, clang/lib/CIR/Dialect/IR CIRDialect.cpp

[CIR] Add offload container attribute (#206576)

Introduce `cir.offload.container`, a CIR dialect unit attribute that marks an
MLIR module as holding a host CIR module and its associated device CIR
modules in one IR unit while later offload merge/split pipeline passes need
visibility into both sides.

The marked module's body holds nested `builtin.module` operations. Each
nested module is tagged with `cir.offload.kind`, represented by the new
`#cir.offload_kind<host>` / `#cir.offload_kind<device>` enum attribute.

The structural contract expected by the follow-up pipeline work is
enforced in `CIRDialect::verifyOperationAttribute`, following the
`gpu.container_module` precedent:

* `cir.offload.container` is a unit attribute attached to a
`builtin.module`
* the first nested module is the host module
* all following nested modules are device modules

    [10 lines not shown]
DeltaFile
+81-0clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+80-0clang/test/CIR/IR/invalid-offload-container.cir
+44-0clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+28-0clang/test/CIR/IR/offload-container.cir
+4-0clang/include/clang/CIR/Dialect/IR/CIRDialect.td
+237-05 files

LLVM/project 24ba344clang/lib/Driver/ToolChains OpenBSD.cpp, clang/test/Driver pic.c openbsd.c

[Driver][OpenBSD] Use -no-pie instead of -nopie (#220464)

Downstream in OpenBSD there is a patch to add support for -nopie in lld
(which it has used by default since 2018). In this repo lld does not
support `-nopie`, so when building clang and lld, you cannot link an
executable with `clang -fno-pic`. Clang now uses the more widely used
spelling here so that toolchains built from this repo can cross compile
to OpenBSD successfully.

This change is an issue on OpenBSD if users passed a different linker
with `-fuse-ld` / `--ld-path` to `ld.bfd` which is still installed by
default but doesn't support the `-no-pie` spelling with their patches.

(cherry picked from commit a2171756dd5d690faf30bafe63810d1dc6cdb342)
DeltaFile
+5-5clang/test/Driver/openbsd.c
+2-2clang/test/Driver/pic.c
+1-1clang/lib/Driver/ToolChains/OpenBSD.cpp
+8-83 files

LLVM/project e5130a2clang/lib/Driver/ToolChains OpenBSD.cpp, clang/test/Driver openbsd.c

[Driver][OpenBSD] Pass -pie for static PIE links (#216907)

OpenBSD uses `rcrt0.o` for static PIE executables. This startup object
references the linker-defined `_DYNAMIC` symbol.

OpenBSD's system linker defaults to PIE, which previously masked the
missing driver flag. An LLD cross-linker built on a non-OpenBSD host
does not share that default. Consequently,
`clang --target=...-openbsd -static` selects `rcrt0.o`, but LLD does not
create `_DYNAMIC`, causing the link to fail.

(cherry picked from commit 118efe7680bdc010ab984f8ae4505699f53bbca6)
DeltaFile
+6-2clang/lib/Driver/ToolChains/OpenBSD.cpp
+1-0clang/test/Driver/openbsd.c
+7-22 files

LLVM/project a2e2038llvm/include/llvm/IR IntrinsicsAMDGPU.td

[AMDGPU] Add missing attributes to llvm.amdgcn.init.whole.wave (#222493)

`llvm.amdgcn.init.whole.wave` only sets the EXEC mask and reports
whether the lane was active on entry. It never calls into the module,
never frees memory, and always returns, so it can carry `nocallback`,
`nofree`, and `willreturn`.

The neighboring `llvm.amdgcn.init.exec` and
`llvm.amdgcn.init.exec.from.input` already have all three; this brings
`init.whole.wave` in line and lets the attributor propagate them to
callers.
DeltaFile
+1-1llvm/include/llvm/IR/IntrinsicsAMDGPU.td
+1-11 files

LLVM/project 7c90315.github/workflows/containers/github-action-ci Dockerfile, .github/workflows/containers/github-action-ci-windows Dockerfile

[GitHub] Bump CI Container Runner Version to 2.337.0 (#222480)

This is the latest version and keeps us ahead of the relatively short
runner support horizon.
DeltaFile
+1-1.github/workflows/containers/github-action-ci/Dockerfile
+1-1.github/workflows/containers/github-action-ci-windows/Dockerfile
+2-22 files

LLVM/project eeead23llvm/lib/Target/LoongArch LoongArchMemoryBarrierOpt.cpp, llvm/test/CodeGen/LoongArch memory-barrier-opt.ll

Address wanglei's comments
DeltaFile
+6-5llvm/test/CodeGen/LoongArch/memory-barrier-opt.ll
+2-4llvm/lib/Target/LoongArch/LoongArchMemoryBarrierOpt.cpp
+8-92 files

FreeBSD/src 565b058lib/libmagic Makefile

MFC: libmagic: Add swap.c and magic.h to SRCS.

(cherry picked from commit 8929675e11c0c64ff96a2441082794980c9c6b2e)
DeltaFile
+4-2lib/libmagic/Makefile
+4-21 files

FreeBSD/src 2ae59e2contrib/file aclocal.m4 configure, contrib/file/magic/Magdir atari

MFC: MFV: file 5.48

(cherry picked from commit 7af41682a96bf7058b82665c33bb9b1bfa079c17)
DeltaFile
+419-140contrib/file/configure
+297-130contrib/file/aclocal.m4
+233-0contrib/file/magic/Magdir/atari
+115-77contrib/file/src/softmagic.c
+178-0contrib/file/src/landlock.c
+51-113contrib/file/src/apprentice.c
+1,293-46076 files not shown
+2,759-89282 files

FreeBSD/src 981bb14sbin/fsck_msdosfs boot.c

MFC: fsck_msdosfs: avoid signed integer overflow in readboot()

(cherry picked from commit 18094609d301540526d3d57e92705bc989d29986)
DeltaFile
+7-14sbin/fsck_msdosfs/boot.c
+7-141 files

FreeBSD/src 0011a18sbin/fsck_msdosfs dir.c

MFC: fsck_msdosfs: fix 32-bit overflow computing the LOST.DIR offset

(cherry picked from commit d3c5464fee7b178a39c189363e48806a11fd3da4)
DeltaFile
+2-2sbin/fsck_msdosfs/dir.c
+2-21 files

FreeBSD/src 8a702ccsbin/fsck_msdosfs fat.c

MFC: fsck_msdosfs: fix status accounting for lost cluster chains

(cherry picked from commit 6cf0d6c3b5777e053074200ff99dc4b750e62b96)
DeltaFile
+32-9sbin/fsck_msdosfs/fat.c
+32-91 files

FreeBSD/src 2643ff9sbin/fsck_msdosfs/tests Makefile fsck_msdosfs_large_test.sh

MFC: fsck_msdosfs: add a test for reconnecting on volumes larger than 4 GiB

MFC after:      1 week

(cherry picked from commit 37aec55d0a7165960f686e5277f030ab3d44cf45)
DeltaFile
+241-0sbin/fsck_msdosfs/tests/fsck_msdosfs_large_test.sh
+2-1sbin/fsck_msdosfs/tests/Makefile
+243-12 files

FreeBSD/src 741eb8asbin/fsck_msdosfs ext.h fat.c

MFC: fsck_msdosfs: fix memory leaks in checkfilesys()

(cherry picked from commit 6d49b0c0e7b8b77d8043593356e712307e894743)
DeltaFile
+4-1sbin/fsck_msdosfs/check.c
+1-1sbin/fsck_msdosfs/fat.c
+1-0sbin/fsck_msdosfs/ext.h
+6-23 files

FreeBSD/src 79e284asbin/fsck_msdosfs/tests Makefile fsck_msdosfs_boot_test.sh

MFC: fsck_msdosfs: add tests for the 32-bit boot block field decoding

(cherry picked from commit c4f458da4411872df4968e02ca292389df462b7b)
DeltaFile
+214-0sbin/fsck_msdosfs/tests/fsck_msdosfs_boot_test.sh
+2-1sbin/fsck_msdosfs/tests/Makefile
+216-12 files

FreeBSD/src 9af3236etc/mtree BSD.tests.dist, sbin/fsck_msdosfs Makefile

MFC: fsck_msdosfs: add tests for lost cluster chain repair accounting

(cherry picked from commit bbaf254293f7e19fa7b0f9ed1da21c7a43126d79)
DeltaFile
+261-0sbin/fsck_msdosfs/tests/fsck_msdosfs_test.sh
+5-0sbin/fsck_msdosfs/Makefile
+5-0sbin/fsck_msdosfs/tests/Makefile
+3-1etc/mtree/BSD.tests.dist
+274-14 files

FreeBSD/src 37ba8a2sbin/fsck_msdosfs boot.c

MFC: fsck_msdosfs: avoid signed integer overflow in readboot()

(cherry picked from commit 18094609d301540526d3d57e92705bc989d29986)
DeltaFile
+7-14sbin/fsck_msdosfs/boot.c
+7-141 files

FreeBSD/src 33bba26sbin/fsck_msdosfs fat.c

MFC: fsck_msdosfs: fix status accounting for lost cluster chains

(cherry picked from commit 6cf0d6c3b5777e053074200ff99dc4b750e62b96)
DeltaFile
+32-9sbin/fsck_msdosfs/fat.c
+32-91 files

FreeBSD/src d3f8718sbin/fsck_msdosfs dir.c

MFC: fsck_msdosfs: fix 32-bit overflow computing the LOST.DIR offset

(cherry picked from commit d3c5464fee7b178a39c189363e48806a11fd3da4)
DeltaFile
+2-2sbin/fsck_msdosfs/dir.c
+2-21 files

FreeBSD/src c2e12dbsbin/fsck_msdosfs ext.h fat.c

MFC: fsck_msdosfs: fix memory leaks in checkfilesys()

(cherry picked from commit 6d49b0c0e7b8b77d8043593356e712307e894743)
DeltaFile
+4-1sbin/fsck_msdosfs/check.c
+1-1sbin/fsck_msdosfs/fat.c
+1-0sbin/fsck_msdosfs/ext.h
+6-23 files