FreeNAS/freenas 59e6372 — src/middlewared/middlewared/plugins/account_ 2fa.py, src/middlewared/middlewared/plugins/auth_ 2fa.py

NAS-143921 / 26.0.0 / Push 2FA configuration to BACKUP node (by themylogin) (#19831)

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

---------

Co-authored-by: themylogin <themylogin at gmail.com>
DeltaFile
+102-0tests/api2/test_twofactor_auth_ha.py
+6-0src/middlewared/middlewared/plugins/auth_/2fa.py
+2-2src/middlewared/middlewared/plugins/account_/2fa.py
+110-23 files

FreeNAS/freenas ab8ddfd — src/middlewared/middlewared/alert/source license_status.py

NAS-144109 / 26.0.0 / Fix `Your support contract expires in 0 days` (by themylogin) (#19893)

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

Co-authored-by: themylogin <themylogin at gmail.com>
DeltaFile
+17-3src/middlewared/middlewared/alert/source/license_status.py
+17-31 files

LLVM/project 24fc282 — lldb/packages/Python/lldbsuite/test lldbutil.py, lldb/test/API/tools/lldb-server TestLldbGdbServer.py main.cpp

[lldb] Wait for file to start test_attach_commandline_continue_app_exits (#227317)

`test_attach_commandline_continue_app_exits` starts an inferior that
exits 3s after writing its syncfile. Under load the harness and
lldb-server take longer than that to reach `DebugActiveProcess`. On
Windows, the attach fails with `ERROR_ACCESS_DENIED` and lldb-server
exits without connecting, and the test waits 60s in `accept()`.

This patch gives the inferior a `waitfile:` argument and create the file
once the stub has attached.

rdar://188700994
DeltaFile
+15-0lldb/packages/Python/lldbsuite/test/lldbutil.py
+10-0lldb/test/API/tools/lldb-server/main.cpp
+5-3lldb/test/API/tools/lldb-server/TestLldbGdbServer.py
+30-33 files

LLVM/project f2b09c5 — llvm/test/Transforms/LoopVectorize/VPlan vplan-printing-metadata.ll, llvm/test/Transforms/LoopVectorize/WebAssembly memory-interleave.ll

[VPlan] Print metadata via ModuleSlotTracker. (#203982)

Since #220390 (dd7236de), ModuleSlotTracker assigns stable metadata
IDs to metadata not inserted in a module yet.

Reuse a ModuleSlotTracker instance when printing metadata
for recipes. This should guarantee stable, numeric IDs for metadata in all
cases, and we should no longer need the `vplan-print-metadata` option.

PR: https://github.com/llvm/llvm-project/pull/203982
DeltaFile
+179-179llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
+78-0llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-metadata.ll
+26-26llvm/test/Transforms/LoopVectorize/X86/CostModel/masked-load-i64.ll
+26-26llvm/test/Transforms/LoopVectorize/X86/CostModel/masked-load-i32.ll
+26-26llvm/test/Transforms/LoopVectorize/X86/CostModel/masked-load-i16.ll
+22-22llvm/test/Transforms/LoopVectorize/X86/CostModel/masked-store-i64.ll
+357-27910 files not shown
+418-34216 files

LLVM/project b9c4072 —

[lldb][Windows] Improve process_is_running check (#227308)

The current implementation of `process_is_running` uses
[`tasklist`](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/tasklist)
on Windows. It prints each CSV field through ShowMessage, which calls
`GetConsoleOutputCP`. From a benchmark at desk, when under load, this
call takes `~85ms` instead of `~10us`. This causes tests to time out
when listing a large amount of processes when running check-lldb.

This patch asks the kernel about the one process instead of listing all
of them with tasklist.

rdar://188700994
DeltaFile
+0-00 files

LLVM/project 6c8bd2b — flang/lib/Optimizer/CodeGen PreCGRewrite.cpp, flang/test/Fir cg-rewrite-unfoldable-slice.fir

[flang][codegen] Report a shape or slice cg-rewrite cannot read

cg-rewrite folds a fir.shape, fir.shape_shift, fir.shift or fir.slice
into the code-gen form by reading it through its defining op. A value
that has none cannot be folded. For a slice this went unreported: the
rewrite dropped it and produced a descriptor for the whole array rather
than the section it names. For a shape it reached a cast on a null
defining op.

Report it instead, and say which operand. Rebuilding the value covers a
block argument, but not every case: a slice chosen by an arith.select
has no single value to take apart.
DeltaFile
+45-13flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
+25-0flang/test/Fir/cg-rewrite-unfoldable-slice.fir
+70-132 files

LLVM/project a4aea75 — flang/lib/Optimizer/CodeGen PreCGRewrite.cpp, flang/test/Fir cg-rewrite-compile-time-only-block-args.fir

[flang][codegen] Rebuild compile-time-only block arguments in cg-rewrite (#227624)

A fir.shape, fir.shape_shift, fir.shift or fir.slice only describes an
array at compile time. cg-rewrite reads one through its defining op and
folds it into the code-gen form, so none of these types has an LLVM
lowering and none is expected to reach codegen.

A pass that merges two blocks differing only in such a value passes it
as a block argument instead, and a block argument has no defining op.
The fold then finds nothing to read: a slice is dropped, leaving a
descriptor for the whole array rather than the section, and a shape
reaches a cast on a null defining op.

Rebuild the value in the block. The operands behind it are integers,
which can be block arguments, so take those as arguments, forward them
along each branch, and build the value from them at the top of the
block. The merge is kept and no block is duplicated.
DeltaFile
+116-0flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
+73-0flang/test/Fir/cg-rewrite-compile-time-only-block-args.fir
+189-02 files

FreeBSD/ports a9539de — graphics/lensfun Makefile, graphics/lensfun/files patch-tests_CMakeLists.txt patch-CMakeLists.txt

graphics/lensfun: unbreak the port's build against CMake 4.x

While here, merge USES+=pathfix into already existing patch
to reduce the number of post-edit backups files.

PR:     298953
DeltaFile
+11-4graphics/lensfun/files/patch-libs_lensfun_CMakeLists.txt
+9-0graphics/lensfun/files/patch-tests_CMakeLists.txt
+9-0graphics/lensfun/files/patch-CMakeLists.txt
+1-1graphics/lensfun/Makefile
+30-54 files

FreeBSD/doc f9f8125 — website/content/en/cgi ports.cgi man.cgi

cgi: minor CSS tweaks
DeltaFile
+3-3website/content/en/cgi/man.cgi
+1-3website/content/en/cgi/ports.cgi
+4-62 files

LLVM/project 2aa480b — llvm/lib/Analysis ScalarEvolution.cpp, llvm/unittests/Analysis ScalarEvolutionTest.cpp

[SCEV] Remove expensive inverted reasoning from isImpliedCond. (#227302)

The constructing the inverted expressions and the additional reasoning
is quite expensive (0.35% for CTMark O3), for marginal gain (3 small
regressions on
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/1494)

I think that should allow us to spend compile-time on SCEV on areas with
higher impact.

2 of those could be recovered by constant-based reasoning about the
inverted condition.

Compile-time improvements:
stage1-O3: -0.35%
stage1-ReleaseThinLTO: -0.32%
stage1-ReleaseLTO-g: -0.28%
stage1-aarch64-O3: -0.31%
stage2-O3: -0.32%

    [5 lines not shown]
DeltaFile
+0-39llvm/unittests/Analysis/ScalarEvolutionTest.cpp
+2-19llvm/lib/Analysis/ScalarEvolution.cpp
+2-582 files

LLVM/project 9fb78fc — llvm/include/llvm/Analysis ValueTracking.h, llvm/lib/Analysis Loads.cpp ValueTracking.cpp

[ValueTracking] Support multiple predecessors in willNotFreeBetween (#223580)

Previously, `willNotFreeBetween` only walked backward along a linear
chain of single-predecessor blocks, bailing out whenever control flow
branched and merged (eg., conditional `if-else` blocks before a loop
preheader).

This PR generalises the backward walk to use a worklist over all
predecessors from `CtxBB` to `AssumeBB` (bounded by
`MaxInstrsToCheckForFree`). This enables LICM( and possibly other
passes) to prove dereferenceability and hoist invariant loads across
merging control flow when no path contains a freeing instruction.

---------

Co-authored-by: Florian Hahn <flo at fhahn.com>
Co-authored-by: Antonio Frighetto <me at antoniofrighetto.com>
DeltaFile
+48-28llvm/lib/Analysis/ValueTracking.cpp
+44-0llvm/test/Analysis/ValueTracking/memory-dereferenceable.ll
+3-3llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
+2-2llvm/lib/Analysis/Loads.cpp
+2-1llvm/include/llvm/Analysis/ValueTracking.h
+1-1llvm/test/Transforms/LICM/hoist-speculatable-load.ll
+100-356 files

LLVM/project d9db167 — lldb/packages/Python/lldbsuite/test/tools/lldb-server lldbgdbserverutils.py

[lldb][Windows] Improve process_is_running check (#227308)

The current implementation of `process_is_running` uses
[`tasklist`](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/tasklist)
on Windows. It prints each CSV field through ShowMessage, which calls
`GetConsoleOutputCP`. From a benchmark at desk, when under load, this
call takes `~85ms` instead of `~10us`. This causes tests to time out
when listing a large amount of processes when running check-lldb.

This patch asks the kernel about the one process instead of listing all
of them with tasklist.

rdar://188700994
DeltaFile
+46-6lldb/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py
+46-61 files

LLVM/project aee0ed0 — llvm/lib/Target/AMDGPU GCNHazardRecognizer.cpp, llvm/test/CodeGen/AMDGPU wmma-coexecution-valu-hazards.mir

[AMDGPU] Fix missed WMMA C-operand co-exec hazard

The gfx1250 WMMA co-execution hazard check treats only A, B and the
SWMMAC index as registers the in-flight MMA still reads. C (src2 of a
non-SWMMAC WMMA) is missing, so a VALU scheduled into the MMA's shadow
can clobber C and the MMA consumes the new value.

This is latent while C is tied to vdst, since the existing D check then
covers it. It miscompiles where the tie does not hold: for
v_wmma_bf16f32_16x16x32_bf16, whose D is narrower than C, and for the
_threeaddr form of any WMMA.

Add src2 to the checked set for non-SWMMAC WMMAs.
DeltaFile
+171-2llvm/test/CodeGen/AMDGPU/wmma-coexecution-valu-hazards.mir
+5-0llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
+176-22 files

FreeBSD/src dd5dc8f — sys/kern subr_epoch.c

epoch: Fix use-after-free in epoch_trace_report()

epoch_trace_report() assigned the return value of RB_INSERT() back to
the new element. When two threads report the same stack concurrently,
the loser's RB_INSERT() returns the element already in the tree, and
that element was freed while still linked, leaking the new allocation.
The next lookup touches freed memory; KASAN catches it as a
use-after-free.

Keep the return value separate and free the new element instead. The
thread that won the race prints the report, so return without printing
it a second time.

Reviewed by:            markj
Fixes:                  173c062a569b ("Improve EPOCH_TRACE")
MFC after:              1 week
Sponsored by:           Rubicon Communications, LLC ("Netgate")
Differential Revision:  https://reviews.freebsd.org/D60162
DeltaFile
+6-2sys/kern/subr_epoch.c
+6-21 files

LLVM/project b96b661 — llvm/include/llvm/Analysis ScalarEvolution.h, llvm/lib/Analysis ScalarEvolution.cpp

[SCEV] Use howManyLessThans to implement howManyGreaterThans. (#226846)

Update howManyLessThans to support inverting the analyzed comparison and
analyze LHS > RHS as ~LHS < ~RHS.

howManyLessThans should now handle all cases howManyGreaterThans did
(and a few more, see improvements in
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/1443).

howManyLessThans now accepts an Inverted argument, which analyzes ~LHS <
~RHS, without materializing the inverted operands explicitly, which can
pessimize results.

I tried to update all code paths where this is possible without too many
changes. A few code paths need bigger changes, and are skipped for now.

PR: https://github.com/llvm/llvm-project/pull/226846
DeltaFile
+250-11llvm/test/Analysis/ScalarEvolution/exit-count-greater-than.ll
+75-132llvm/lib/Analysis/ScalarEvolution.cpp
+5-9llvm/test/CodeGen/Thumb2/mve-pipelineloops.ll
+6-6llvm/test/Analysis/ScalarEvolution/exit-value-nowrap-flags.ll
+4-6llvm/include/llvm/Analysis/ScalarEvolution.h
+2-7llvm/test/CodeGen/Thumb2/LowOverheadLoops/arm_cmplx_dot_prod_f32.ll
+342-1711 files not shown
+344-1737 files

LLVM/project b0e35e5 — llvm/include/llvm/Object OffloadBinary.h, llvm/lib/Object OffloadBinary.cpp

[Offloading] Add support for compressed OffloadBinary types (#222774)

Summary:
Offload binaries are used to store many heterogenous architectures into
a singel offloading blob. These lists can get very large so this PR adds
the option to compress them with the LLVM provided compression
libraries.

The implementation is quite simple, we simply compress all the buffers
after the header into a single compressed blob, then re-construct the
header. Extracting is the reverse.

The biggest change is that the offload binary now **owns** the memory,
whereas before we simply took a reference to it. This is necessary
because the decompression must create new memory compared to what the
user provided. This adds an extra copy internally, but it also
simplifies the V2 additions.

This does not wire up any clang/HIP support, just providing the

    [6 lines not shown]
DeltaFile
+131-49llvm/lib/Object/OffloadBinary.cpp
+78-0llvm/unittests/Object/OffloadingTest.cpp
+28-19llvm/include/llvm/Object/OffloadBinary.h
+40-0llvm/test/tools/llvm-objdump/Offloading/compressed.test
+35-3llvm/tools/llvm-offload-binary/llvm-offload-binary.cpp
+23-8llvm/tools/obj2yaml/offload2yaml.cpp
+335-7913 files not shown
+500-10019 files

FreeBSD/ports 7de9a47 — devel/jenkins-lts Makefile distinfo

devel/jenkins-lts: Update to 2.580.1

Sponsored by:   The FreeBSD Foundation
DeltaFile
+3-3devel/jenkins-lts/distinfo
+1-1devel/jenkins-lts/Makefile
+4-42 files

FreeBSD/ports 594287f — devel/jenkins Makefile distinfo

devel/jenkins: Update to 2.584

Sponsored by:   The FreeBSD Foundation
DeltaFile
+3-3devel/jenkins/distinfo
+1-1devel/jenkins/Makefile
+4-42 files

OPNSense/plugins d8d9b66 — net/frr pkg-descr, net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api ServiceController.php

net/frr: Report failed configuration reloads (#5748)

* net/frr: Report failed configuration reloads

Preserve the frr-reload exit status so the service controller can report reload failures. Import the frr-reload.log into the standard FRR log at debug level and expose that log directly in the Routing menu.

* Add changelog
DeltaFile
+6-0net/frr/src/opnsense/service/templates/OPNsense/Syslog/sources/020-frr-reload.conf
+2-2net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/ServiceController.php
+1-1net/frr/src/opnsense/service/templates/OPNsense/Syslog/local/routing_frr.conf
+1-1net/frr/src/opnsense/service/conf/actions.d/actions_quagga.conf
+1-1net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/Menu/Menu.xml
+1-0net/frr/pkg-descr
+12-56 files

FreeBSD/ports d6bfcaf — x11-wm/wmconfig pkg-plist distinfo

x11-wm/wmconfig: Update 1.5.2 => 1.5.3

While here:
- Add USES=autoreconf.
- Sort Makefile (pet portfmt).

Changelog:
* Georgian language translation added.
https://www.arrishq.net/html/news.html

Commit log:
https://git.arrishq.net/?p=wmconfig.git;a=commitdiff;h=7df1dc5

PR:             298974
Approved by:    no maintainer
Approved by:    osa, vvd (Mentors, implicit)
DeltaFile
+5-6x11-wm/wmconfig/Makefile
+3-3x11-wm/wmconfig/distinfo
+1-0x11-wm/wmconfig/pkg-plist
+9-93 files

FreeBSD/src 005af83 — sys/dev/dwc dwc4_dma.c

dwc4_dma: fix armv7 build.
DeltaFile
+9-7sys/dev/dwc/dwc4_dma.c
+9-71 files

LLVM/project e011bda — clang/lib/Driver/ToolChains AMDGPU.cpp, clang/test/Driver amdgpu-toolchain.c

[AMDGPU] Stop trying to link AMDGPU ASan from compiler-rt (#227388)

Summary:
As I am building sanitizers in the standard `compiler-rt` location, we
still need to maintain compatibility with the old DeviceRTL usage.
Ideally this will be replaced in the near term, but for now we should
suppress the compiler from trying to link a `-lclang_rt.asan` that
doesn't exist.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
DeltaFile
+6-0clang/test/Driver/amdgpu-toolchain.c
+3-1clang/lib/Driver/ToolChains/AMDGPU.cpp
+9-12 files

LLVM/project 850b1f7 — lldb/test/API/functionalities/gdb_remote_client TestEmptyThreadList.py

[lldb][test] Change vCont handling in TestEmptyThreadList.py (#227703)

The `def vCont` handler is triggered only for `vCont;c`, not other
`vCont...`. This test only sometimes sends this, so sometimes it
produced a UnexpectedPacketException.

(though it "passes" still, somehow)

To fix this, declare a vCont handler for the colon c version, and let
`def other` handle the rest.
DeltaFile
+3-0lldb/test/API/functionalities/gdb_remote_client/TestEmptyThreadList.py
+3-01 files

LLVM/project 584310b — llvm/lib/Target/AMDGPU AMDGPUTargetTransformInfo.cpp, llvm/test/Analysis/CostModel/AMDGPU narrow-int-to-bfloat.ll narrow-int-to-fp.ll

[AMDGPU] Price scalar integer to fp casts by source width and sign

Scalar sources between a byte and 31 bits fell to the default cost of one
while the matching vector lanes were already priced, which skewed the
difference SLP weighs a bundle against. Such a source is extended before
the conversion, and what the extension takes depends on the width, on the
sign and on whether the subtarget has SDWA and 16 bit instructions.
Sources narrower than a byte are left alone, because their vector form is
not priced either.
DeltaFile
+259-259llvm/test/Analysis/CostModel/AMDGPU/narrow-int-to-fp.ll
+45-45llvm/test/Analysis/CostModel/AMDGPU/narrow-int-to-bfloat.ll
+29-9llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+333-3133 files

LLVM/project 57bbdd7 — llvm/test/CodeGen/AMDGPU slp-int-to-fp.ll

update slp-int-to-fp.ll
DeltaFile
+128-170llvm/test/CodeGen/AMDGPU/slp-int-to-fp.ll
+128-1701 files

LLVM/project c5b451e — llvm/lib/Target/AMDGPU AMDGPUTargetTransformInfo.cpp

format
DeltaFile
+1-1llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+1-11 files

LLVM/project 09a3dc8 — llvm/lib/Target/AMDGPU AMDGPUTargetTransformInfo.cpp, llvm/test/Analysis/CostModel/AMDGPU narrow-int-to-bfloat.ll

[AMDGPU] Price narrow integer to bfloat vector casts

A vector lane of 9 to 15 or 17 to 31 bits converted to bfloat got the
generic cost, which leaves out the rounding. Such a lane is converted to
f32 first like any other narrow lane, so price it as the f32 conversion of
the same source plus the rounding. Lanes of 8 and 16 bits keep their cost.
DeltaFile
+45-45llvm/test/Analysis/CostModel/AMDGPU/narrow-int-to-bfloat.ll
+11-7llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+56-522 files

LLVM/project 84c884a — llvm/lib/Target/AMDGPU AMDGPUTargetTransformInfo.cpp, llvm/test/Analysis/CostModel/AMDGPU fptoui.ll fptosi.ll

fix 16-bit conv
DeltaFile
+136-136llvm/test/Analysis/CostModel/AMDGPU/narrow-int-to-fp.ll
+69-31llvm/test/Analysis/CostModel/AMDGPU/expanded-int-fp-casts.ll
+30-14llvm/test/Analysis/CostModel/AMDGPU/fptoui.ll
+30-14llvm/test/Analysis/CostModel/AMDGPU/fptosi.ll
+41-3llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+306-1985 files

LLVM/project ec10377 — llvm/lib/Target/AMDGPU AMDGPUTargetTransformInfo.cpp, llvm/test/Analysis/CostModel/AMDGPU fptoui.ll narrow-int-to-bfloat.ll

[AMDGPU] Model the cost of the expanded integer to/from floating point casts

No instruction converts to or from a 64 bit integer, and narrow vector
lanes are converted one at a time. Price these expansions by the FP64
rate, sdwa and 16 bit instruction support, and price i33 to i63 like
i64 and bf16 like f32 plus rounding.

Assisted-by: Claude Code Opus 5
DeltaFile
+312-215llvm/test/Analysis/CostModel/AMDGPU/cast.ll
+210-210llvm/test/Analysis/CostModel/AMDGPU/narrow-int-to-fp.ll
+146-70llvm/test/Analysis/CostModel/AMDGPU/expanded-int-fp-casts.ll
+70-70llvm/test/Analysis/CostModel/AMDGPU/narrow-int-to-bfloat.ll
+107-0llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+60-37llvm/test/Analysis/CostModel/AMDGPU/fptoui.ll
+905-6021 files not shown
+965-6397 files

LLVM/project 2deb333 — llvm/test/CodeGen/AMDGPU slp-int-to-fp.ll

update slp-int-to-fp.ll
DeltaFile
+188-243llvm/test/CodeGen/AMDGPU/slp-int-to-fp.ll
+188-2431 files