FreeNAS/freenas 250bd8f — src/freenas/usr/local/libexec ctdb_ha_reclock.py, src/middlewared/middlewared/plugins/directoryservices_ secrets.py

NAS-145072 / 28.0.0-BETA.1 / Use truenas_smbhad for SMB stateful failover (#20072)

Samba now replicates SMB durable handles to the standby controller with
the truenas_smbhad daemon. This replaces the ctdb implementation.

- Remove ctdb and the clustered TDB code. passdb, group mapping, share
ACLs and secrets are local to each controller again.
- Stop setting "clustering" in smb.conf.
- Write /etc/truenas_smbhad.conf with the controller node on HA systems.
Reload the daemon when a license change modifies the file.
- Keep smbd stopped on the standby. Restart it on takeover, because it
restores handles only at startup.
- Log the daemon to /var/log/truenas_smbhad.log.
- Remove the update block for stateful failover.
- Add unit tests and HA tests.

(cherry picked from commit c8c7637c9900712008384d8f97d55fe6b78a2b23)
(cherry picked from commit dec4ce4c04aa435feec7f6d26b3c061485d15b46)
DeltaFile
+395-0tests/sharing_protocols/smb/test_smb_ha.py
+8-183src/middlewared/middlewared/utils/tdb.py
+0-111src/freenas/usr/local/libexec/ctdb_ha_reclock.py
+21-57src/middlewared/middlewared/plugins/directoryservices_/secrets.py
+17-37src/middlewared/middlewared/plugins/smb_/groupmap.py
+21-33src/middlewared/middlewared/plugins/smb_/util_passdb.py
+462-42136 files not shown
+665-78842 files

LLVM/project aa509a8 — llvm/lib/Frontend/OpenMP OMPDescriptors.inc

[OpenMP] Apply fixes to clause/directive descriptors

- Remove NOWAIT from TASKWAIT in 5.0.
- Remove ORDER from DISTRIBUTE in 5.0.
- Remove THREAD_LIMIT from TARGET in 5.0.
- Remove variable-category modifier from DEFAULT in 5.0-5.2.
- Remove ALLOCATE from SCOPE in 5.1.
- Remove FIRSTPRIVATE from SCOPE in 5.1.
DeltaFile
+16-16llvm/lib/Frontend/OpenMP/OMPDescriptors.inc
+16-161 files

LLVM/project a6ad555 — clang/include/clang/Options Options.td, clang/lib/Driver/ToolChains Clang.cpp

address comments
DeltaFile
+3-3clang/include/clang/Options/Options.td
+1-1clang/lib/Driver/ToolChains/Clang.cpp
+4-42 files

LLVM/project 05a5ab9 — clang/docs LanguageExtensions.md, clang/include/clang/Options Options.td

Enable driver changes for fexec-charset
DeltaFile
+14-6clang/lib/Driver/ToolChains/Clang.cpp
+14-4clang/include/clang/Options/Options.td
+11-3clang/test/Driver/clang_f_opts.c
+10-0llvm/lib/Support/TextEncoding.cpp
+4-3clang/test/Driver/cl-options.c
+3-3clang/docs/LanguageExtensions.md
+56-193 files not shown
+60-199 files

LLVM/project 90835ed — clang/include/clang/AST FormatString.h, clang/lib/AST ScanfFormatString.cpp PrintfFormatString.cpp

do not convert character by character
DeltaFile
+34-31clang/lib/AST/FormatString.cpp
+28-26clang/lib/AST/FormatStringParsing.h
+20-18clang/lib/Sema/SemaChecking.cpp
+8-5clang/lib/AST/PrintfFormatString.cpp
+4-4clang/lib/AST/ScanfFormatString.cpp
+2-2clang/include/clang/AST/FormatString.h
+96-866 files

LLVM/project b1f99a2 — clang-tools-extra/clang-tidy/utils FormatStringConverter.cpp, clang/lib/AST PrintfFormatString.cpp ScanfFormatString.cpp

Add isNoop to avoid conversion code in ActOnGCCAsmStmtString
DeltaFile
+41-31clang/lib/AST/FormatStringParsing.h
+31-31clang/lib/AST/FormatString.cpp
+20-20clang/lib/Sema/SemaChecking.cpp
+14-24clang/lib/AST/ScanfFormatString.cpp
+4-22clang/lib/AST/PrintfFormatString.cpp
+4-5clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
+114-1336 files not shown
+127-13912 files

LLVM/project 0df734f — clang/include/clang/Basic TargetInfo.h, clang/lib/AST ASTContext.cpp

convert to exec-charset inside getPredefinedStringLiteralFromCache, test __builtin_FILE()
DeltaFile
+10-0clang/lib/AST/ASTContext.cpp
+3-1clang/test/CodeGen/systemz-charset.cpp
+3-0clang/lib/Basic/TargetInfo.cpp
+2-0clang/include/clang/Basic/TargetInfo.h
+18-14 files

LLVM/project 10cf100 — clang/lib/AST FormatStringParsing.h ScanfFormatString.cpp, clang/lib/Sema SemaChecking.cpp

Add format string handling
DeltaFile
+82-39clang/lib/AST/PrintfFormatString.cpp
+46-40clang/lib/AST/FormatString.cpp
+41-24clang/lib/Sema/SemaChecking.cpp
+28-14clang/lib/AST/ScanfFormatString.cpp
+25-11clang/lib/AST/FormatStringParsing.h
+19-0llvm/lib/Support/TextEncoding.cpp
+241-1288 files not shown
+269-14114 files

LLVM/project 7fb7bfb — clang/lib/AST ASTContext.cpp, clang/lib/Lex TextEncoding.cpp

Convert the key before cache lookup to prevent encoding differences
DeltaFile
+9-9clang/lib/AST/ASTContext.cpp
+2-0clang/lib/Lex/TextEncoding.cpp
+11-92 files

LLVM/project 1f9906a — clang/lib/AST FormatString.cpp ScanfFormatString.cpp

change char literals to u8'' to preserve behaviour in the case the
compiler is compiled with a different fexec-charset
DeltaFile
+44-44clang/lib/AST/PrintfFormatString.cpp
+28-28clang/lib/AST/ScanfFormatString.cpp
+28-27clang/lib/AST/FormatString.cpp
+100-993 files

LLVM/project 28de861 — clang/lib/AST ScanfFormatString.cpp PrintfFormatString.cpp, llvm/include/llvm/Support TextEncoding.h

rename char conversion function to convertBasicChar
DeltaFile
+18-17clang/lib/AST/FormatString.cpp
+12-12clang/lib/AST/PrintfFormatString.cpp
+3-5clang/lib/AST/ScanfFormatString.cpp
+3-1llvm/include/llvm/Support/TextEncoding.h
+36-354 files

LLVM/project 0f9087e — clang/lib/AST Expr.cpp, clang/test/Sema systemz-charset-asm-diag.cpp charset-asm-diag.cpp

address latest comments
DeltaFile
+0-17clang/test/Sema/systemz-charset-asm-diag.cpp
+17-0clang/test/Sema/charset-asm-diag.cpp
+8-0clang/lib/AST/Expr.cpp
+25-173 files

LLVM/project 1037627 — clang/test/CodeGen/AArch64 inline-asm.c inline-asm-p-constraint.c, clang/test/CodeGen/X86 amxavx512-builtins.c

[CodeGen] Convert a few more tests to use CIR runlines (#239826)

Same as my previous approaches, this converts 12 'slightly higher' touch
versions. Each of these were cases where the only difference in
checked-IR is the SSA name, so this generalizes check-lines slightly to
wqork with both.
DeltaFile
+4-2clang/test/CodeGenCXX/weak-init.cpp
+4-2clang/test/CodeGenCXX/this-nonnull.cpp
+4-2clang/test/CodeGen/X86/amxavx512-builtins.c
+3-2clang/test/CodeGenOpenCL/numbered-address-space.cl
+3-2clang/test/CodeGen/AArch64/inline-asm.c
+3-2clang/test/CodeGen/AArch64/inline-asm-p-constraint.c
+21-126 files not shown
+34-1812 files

LLVM/project a32713e — clang/lib/Analysis/LifetimeSafety Origins.cpp LifetimeAnnotations.cpp

[LifetimeSafety][NFC] Use ignoreParensAndImpCasts consistently (#240733)

Follow-up to #240104. Replace the remaining `IgnoreParenImpCasts()`
calls in LifetimeSafety with `ignoreParensAndImpCasts()`.

NFC: at these call sites, not skipping `MaterializeTemporaryExpr` and
`SubstNonTypeTemplateParmExpr` does not change the result.

Assisted-by: Claude Opus 5.5
DeltaFile
+6-5clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
+2-2clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
+1-1clang/lib/Analysis/LifetimeSafety/Origins.cpp
+9-83 files

FreeBSD/src 546a764 — tests/sys/pmc pmc_rapl_test.c pmc_pidtrack_test.c, tests/sys/pmc/amd pmu_event_neg_test.c pmu_mux_test.c

tests/sys/pmc: add pidtrack, callchain, pmc(8), RAPL and AMD tests

Add to the suite of ATF tests for hwpmc(4).  Vendor-neutral tests go in
tests/sys/pmc; tests that depend on AMD hardware interfaces go in
tests/sys/pmc/amd, which is only built on amd64.

tests/sys/pmc:
  pmc_pidtrack_test      process-mode PMCs follow their PID: a live
                         self-read counts the process' own work, an idle
                         process sharing the CPU with a busy one does not
                         pick up its work, and the count survives a
                         context switch
  pmc_callchain_ur_test  pmcstat -U collects user callchains through the
                         PMC_UR ring; regression test for the KASSERTs
                         fixed in rGaf3929c5152b and rG66118c3f1011
  pmc_cli_test           pmc(8): missing log, list-events, record/info
                         round trip with the "instructions" alias
  pmcstat_tsc_test       (amd64) tsc_freq in the initlog record, TSC
                         column of pmcstat -R, tsc in pmc filter -j,

    [29 lines not shown]
DeltaFile
+481-0tests/sys/pmc/amd/pmu_event_test.c
+399-0tests/sys/pmc/pmc_pidtrack_test.c
+316-0tests/sys/pmc/amd/amd_pmc_test_common.h
+280-0tests/sys/pmc/amd/pmu_mux_test.c
+260-0tests/sys/pmc/pmc_rapl_test.c
+254-0tests/sys/pmc/amd/pmu_event_neg_test.c
+1,990-09 files not shown
+2,667-315 files

FreeBSD/src 2764bc5 — sys/dev/asmc asmc.c

asmc: do not enable the sudden motion sensor on the MMIO backend

The interrupt filter reads the PIO interrupt port, but sc_ioport is NULL
under MMIO; the capability test only probed for keys, which says nothing
about the backend.

No MMIO-capable machine has a sudden motion sensor anyway. It existed to
park the heads of spinning disks.

Reviewed by:    adrian
Differential Revision:  https://reviews.freebsd.org/D61383
DeltaFile
+13-8sys/dev/asmc/asmc.c
+13-81 files

LLVM/project e3bb1d8 — libcxx Maintainers.md

[libc++] Add Michael Kazakov as the main PSTL maintainer (#240857)
DeltaFile
+3-3libcxx/Maintainers.md
+3-31 files

LLVM/project 9840745 — clang/lib/CIR/CodeGen CIRGenModule.cpp, clang/test/CodeGenCXX module-funcs-from-imports.cppm

[CIR] Skip function bodies imported from other named modules (#239686)

When a function's body comes from another named module, CIRGen now emits
just a declaration instead of hitting an errorNYI. always_inline
template instantiations still get their bodies, since a library may not
provide symbols for them.

Assisted-by: Cursor / Claude Opus 5.5
DeltaFile
+12-1clang/lib/CIR/CodeGen/CIRGenModule.cpp
+8-0clang/test/CodeGenCXX/module-funcs-from-imports.cppm
+20-12 files

FreeNAS/freenas bb23826 — src/freenas/usr/local/libexec ctdb_ha_reclock.py, src/middlewared/middlewared/plugins/directoryservices_ secrets.py

NAS-145072 / 27.1.0 / Use truenas_smbhad for SMB stateful failover (by anodos325) (#20166)

Samba now replicates SMB durable handles to the standby controller with
the truenas_smbhad daemon. This replaces the ctdb implementation.

- Remove ctdb and the clustered TDB code. passdb, group mapping, share
ACLs and secrets are local to each controller again.
- Stop setting "clustering" in smb.conf.
- Write /etc/truenas_smbhad.conf with the controller node on HA systems.
Reload the daemon when a license change modifies the file.
- Keep smbd stopped on the standby. Restart it on takeover, because it
restores handles only at startup.
- Log the daemon to /var/log/truenas_smbhad.log.
- Remove the update block for stateful failover.
- Add unit tests and HA tests.

Original PR: https://github.com/truenas/middleware/pull/20072

Co-authored-by: Andrew Walker <andrew.walker at truenas.com>
DeltaFile
+394-0tests/sharing_protocols/smb/test_smb_ha.py
+8-183src/middlewared/middlewared/utils/tdb.py
+0-111src/freenas/usr/local/libexec/ctdb_ha_reclock.py
+21-57src/middlewared/middlewared/plugins/directoryservices_/secrets.py
+17-37src/middlewared/middlewared/plugins/smb_/groupmap.py
+21-33src/middlewared/middlewared/plugins/smb_/util_passdb.py
+461-42136 files not shown
+664-78842 files

LLVM/project 61b685c — llvm/test/CodeGen/Hexagon vect-qfp.mir phi-elim-subreg-lanes.mir, llvm/test/CodeGen/Hexagon/vect qfp-mix.mir vect-qfp-unary.mir

[Hexagon](NFC) Drop `tracksRegLiveness: true` from MIR tests (#240862)

This is on by default and the only MIR option we set in most cases.
DeltaFile
+0-20llvm/test/CodeGen/Hexagon/const-prop-undef.mir
+0-8llvm/test/CodeGen/Hexagon/bit-cmp0.mir
+0-7llvm/test/CodeGen/Hexagon/phi-elim-subreg-lanes.mir
+0-6llvm/test/CodeGen/Hexagon/vect/vect-qfp-unary.mir
+0-6llvm/test/CodeGen/Hexagon/vect-qfp.mir
+0-4llvm/test/CodeGen/Hexagon/vect/qfp-mix.mir
+0-51158 files not shown
+0-228164 files

NetBSD/pkgsrc-wip 0f15f74 — groff-pdfmark distinfo DESCR

textproc/groff-pdfmark
Adding groff-pdfmark package to make available the pdfmark macros and supporting scripts that were removed from the main groff distribution in recent versions.
DeltaFile
+101-0groff-pdfmark/Makefile
+35-0groff-pdfmark/PLIST
+13-0groff-pdfmark/DESCR
+5-0groff-pdfmark/distinfo
+154-04 files

FreeBSD/src c5400dc — lib/libpmc libpmcinternal.h libpmc_pmu_util.c, lib/libpmc/pmu-events/arch/x86 mapfile.csv

libpmc: Strip leading zeros from the cpuid model

Upstream's mapfile.csv lists models without leading zeros, so entries
for models below 10h had to be fixed up by hand on every import.  Strip
them before matching and use the entries as imported.

Add tests to validate the functionality.

Reviewed by:    mhorne, Ali Mashtizadeh <ali at mashtizadeh.com>
Sponsored by:   Advanced Micro Devices, Inc.
MFC after:      1 week
Signed-off-by:  Osvaldo Janeri Filho <ojanerif at amd.com>
Differential Revision:  https://reviews.freebsd.org/D60790
DeltaFile
+76-3tests/sys/pmc/pmc_mapfile_test.c
+30-0lib/libpmc/libpmc_pmu_util.c
+4-4lib/libpmc/pmu-events/arch/x86/mapfile.csv
+1-0lib/libpmc/libpmcinternal.h
+111-74 files

LLVM/project b2f7f43 — libcxx/include future, libcxx/include/__algorithm radix_sort.h make_projected.h

Speed up std::invoke() compile times and rename __invoke_result_t to __direct_invoke_result_t (#213403)

This may surface a pre-existing recursive template instantiation compiler bug (#236677) in user code.
DeltaFile
+49-25libcxx/include/__type_traits/invoke.h
+12-0libcxx/include/__functional/invoke.h
+6-5libcxx/include/__functional/bind.h
+5-4libcxx/include/__algorithm/make_projected.h
+4-4libcxx/include/__algorithm/radix_sort.h
+3-3libcxx/include/future
+79-414 files not shown
+86-4510 files

LLVM/project 5265aec — clang/utils/TableGen CIRLoweringEmitter.cpp

[CIR] Emit llvmOpProps setters straight from the dag

Every generated llvmOp body now starts from a `props` local, and the
setters are written while walking the llvmOpProps dag, so the
ForwardedProp struct and its parse helper go away. The emitter checks
only the entry shape; a name that is not an argument of the op fails to
compile in the generated code.

Assisted-by: Claude Code (Claude Opus 5.5).
DeltaFile
+30-59clang/utils/TableGen/CIRLoweringEmitter.cpp
+30-591 files

LLVM/project 78fde25 — clang/lib/Analysis/LifetimeSafety LoanPropagation.cpp, clang/test/Sema/LifetimeSafety safety.cpp

[LifetimeSafety] Start alias chain search at the use instead of the block end (#240655)

Within the use's block, the alias chain search started from the block
end, so it could report an alias path through a flow that only happens
after the use:

```cpp
struct S {
  int *p_;
  void bar();
  void f() {
    int *q;
    {
      int num;
      int *p = &num;
      p_ = p;       // note: 'p' aliases 'num' (after)
      q = p;        // note: 'p' aliases 'num' (before)
    }
    bar();          // reads p_

    [11 lines not shown]
DeltaFile
+20-6clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
+23-0clang/test/Sema/LifetimeSafety/safety.cpp
+43-62 files

LLVM/project b63d12d — clang/lib/Analysis/LifetimeSafety LoanPropagation.cpp, clang/test/Sema/LifetimeSafety dangling-global.cpp safety.cpp

[LifetimeSafety] Don't drop the last alias note for chains from a declaration (#240654)

`dropLeadingLoads` removes the casts at the front of an alias chain
because, when the chain starts from an expression such as the copy in
`return v;`, they only load the variable that the warning already points
at. When the chain starts from a declaration instead, those casts come
from the write that stored the loan, so dropping them loses the alias
closest to the use.

```cpp
struct S {
  int *p_;
  void bar();
  void f() {
    {
      int num;
      int *p = &num;
      int *q = p;   // note: 'p' aliases 'num'
      p_ = q;       // note: 'q' aliases 'num' (missing before)

    [16 lines not shown]
DeltaFile
+8-8clang/test/Sema/LifetimeSafety/invalidations.cpp
+9-2clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
+9-1clang/test/Sema/LifetimeSafety/safety.cpp
+1-1clang/test/Sema/LifetimeSafety/dangling-global.cpp
+27-124 files

FreeBSD/src a81038c — sys/kern kern_thr.c, sys/sys syscallsubr.h

thr_set_name(2): add kern_ implementation

Effort:         CHERI upstreaming
Sponsored by:   Innovate UK
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2284
DeltaFile
+10-4sys/kern/kern_thr.c
+1-0sys/sys/syscallsubr.h
+11-42 files

FreeBSD/src 698ba43 — sys/kern kern_sig.c, sys/sys signal.h syscallsubr.h

sig*(2): add kern_ and user_ implementations

Effort:         CHERI upstreaming
Sponsored by:   Innovate UK
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2284
DeltaFile
+72-20sys/kern/kern_sig.c
+11-0sys/sys/syscallsubr.h
+4-0sys/sys/signal.h
+87-203 files

FreeBSD/src 3d101bb — sys/kern kern_uuid.c, sys/sys syscallsubr.h

uuidgen(2): add user_ implementation

Effort:         CHERI upstreaming
Sponsored by:   Innovate UK
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2284
DeltaFile
+9-4sys/kern/kern_uuid.c
+2-0sys/sys/syscallsubr.h
+11-42 files

FreeBSD/src 22f93ed — sys/kern kern_time.c, sys/sys syscallsubr.h

kern_time.c: add kern_ and user_ implementations

Expose user_clock_nanosleep globally.

Effort:         CHERI upstreaming
Sponsored by:   Innovate UK
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2284
DeltaFile
+22-13sys/kern/kern_time.c
+7-0sys/sys/syscallsubr.h
+29-132 files