[clang][Sema][CUDA,SPIRV] Instantiating function templates duplicates GPU attrs (#218582)
A number of GPU related attributes were incorrectly falling back to the
generic attribute instatiation logic which resulted in duplicating the
attributes. The duplicates were also not correctly instantiated.
This also exposed a failure to prevent duplicate addition in
handleGlobalAttr as well.
Record what the hardware entitlement script did on upgrade
This commit adds changes to leave a record under /data of every outcome from truenas-hw-license.py, since the installer discards the script's output and a failure to write the entitlement record was previously invisible. Middleware relays it into middlewared.log on first boot and then deletes it, and only says anything when the record carries an error.
Every outcome is recorded rather than just the failures because a chassis reading as unknown is indistinguishable in the script from dmidecode having failed, so which outcomes deserve attention is better decided in middleware.
Both writes now go through atomic_write instead of a hand-rolled open with fchmod and fchown, matching truenas-nvdimm.py which already uses it from the same chroot. That also closes a window where a failed write left behind a permanent zero-byte /data/license that no later upgrade would have retried.
[flang] Enable wrap-unstructured-constructs-in-execute-region by default
More extensive testing since the flag was introduced, with the
regressions it uncovered now fixed.
libpcap: updated to 1.10.7
Summary for 1.10.7 libpcap release
General:
Free p->opt.device on close, not on cleanup. Issue
reported by Harrison Green.
Source code:
Deprecate bpf_filter().
Packet filtering:
Initialize the scratch memory store to 0.
In "net <n> mask <m>" catch ENOMEM for the "m" too.
CVE-2026-0799: Access M[] safely in the BPF interpreter.
CVE-2026-31912: Mind the program bounds in pcap_offline_filter().
CVE-2026-31911: Fail opcodes safely in the BPF interpreter.
CVE-2026-6244: Avoid division by zero via pcap_offline_filter().
CVE-2026-6554: Limit "ja L" looping in pcap_offline_filter().
Validate BPF opcodes stricter.
For "lsh" and "rsh" guard "#k" as well.
[24 lines not shown]
pkgconf: updated to 3.0.7
Changes from 3.0.6 to 3.0.7:
* Correctness fixes:
- spdxtool now serializes the SPDX 3.0 suppliedBy property as a single Agent
reference instead of a one-element array, as required by the official JSON
schema.
- bomtool no longer emits PackageDownloadLocation twice for each package.
These fixes were contributed by R. Christian McDonald.
* Build, packaging and portability fixes:
- The Windows installer uses a default installation directory without a
space in its name. Patch by Kai Pastor.
- Skip the spdxtool allocation-failure test for static builds, where linker
wrapping also intercepts libpkgconf allocations and invalidates the test.
See https://github.com/pkgconf/pkgconf/issues/593.
- Use PKGCONF_ITEM_SIZE instead of PATH_MAX in the test runner, allowing it
to build on systems where PATH_MAX is not declared, such as GNU Hurd.
See https://github.com/pkgconf/pkgconf/issues/600.
[RISCV] Andes: model fast unaligned accesses for the 45-series (#221166)
The 45-series cores support unaligned scalar accesses. Add
FeatureUnalignedScalarMem to each 45-series processor (andes-n45,
andes-nx45, andes-a45, andes-ax45 and andes-ax45mpv), so that it is
selected by -mcpu rather than -mtune. Other processors declare it this
way too. The feature is somewhat architectural: -mtune is only supposed
to affect performance, but reaching it through tune features lets -mtune
introduce unaligned accesses that crash on a CPU which does not support
them.
Cover this in memcpy.ll using -mcpu=andes-a45/-mcpu=andes-ax45. The new
RUN lines pass -mtune=rocket so that the 45-series scheduling model does
not reorder the output, letting them reuse the existing check lines.
Co-authored-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
taglib: updated to 2.3.2
TagLib 2.3.2 (Sep 5, 2026)
* MP3: Fix parsing of per-frame unsynchronized ID3v2 frames.
* MP3: Accept iTunes ID3 frames with space padded ID3v2.2 ID.
* MP4: More tolerant handling of `covr` atom with wrong flags.
* MP4: Support additional codecs (AC3, DTS, EAC3, FLAC, Opus).
* Ogg: Support Vorbis comments from a multiplexed stream.
* WMA: Improve property interface for ASF files.
* RIFF: Support RF64 and BW64 64-bit extensions.
* Matroska: Fix file scanning with fast read style.
* Matroska: Load attachment data lazily on demand.
* Matroska: Read the segment title without audio properties.
* Verify values parsed from files to prevent resource exhaustion, denial of
service attacks and out of range conversions by crafted input for various
file formats (AIFF, APE, DSDIFF, FLAC, MP3, MP4, MPC, Matroska, Ogg, SHN,
WMA, XM).
* Fix data races in lazily initialized shared caches, test thread safety.
* Use `Requires.private` for zlib with `pkg-config`.
iavf: Probe the Hyper-V VF device ID
The shared code already recognizes IAVF_DEV_ID_VF_HV and handles it
through the regular iavf register and virtchnl paths, but the PCI probe
table omits it. Add the missing entry so the driver attaches.
PR: 239849
MFC after: 1 week
iavf: Probe the Hyper-V VF device ID
The shared code already recognizes IAVF_DEV_ID_VF_HV and handles it
through the regular iavf register and virtchnl paths, but the PCI probe
table omits it. Add the missing entry so the driver attaches.
PR: 239849
MFC after: 1 week
[SLP][modularisation][NFC] Move getNumberOfParts, isAllowedNonPowerOf2VF (#220827)
Move the following BoUpSLP-independent type/width helpers out of
SLPVectorizer.cpp into SLPVectorizer/SLPTypeUtils.{h,cpp}:
getNumberOfParts
isAllowedNonPowerOf2VF
Both read a file-local cl::opt (SLPReVec and VectorizeNonPowerOf2
respectively). The options stay static in SLPVectorizer.cpp; the moved
helpers take their values as explicit bool parameters. Behavior is
unchanged.
Part of the SLPVectorizer.cpp modularization effort:
https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922
apple_bce: require usb(4) for vhci functionality
The vhci portion of the driver relies on usb(4) for both constants and
functionality. Add an explicit dependency on usb(4) in `files.amd64` so
it builds properly 100% of the time in a static kernel config.
Reviewed by: seuros
Differential Revision: https://reviews.freebsd.org/D59469
apple_bce: require usb(4) for vhci functionality
The vhci portion of the driver relies on usb(4) for both constants and
functionality. Add an explicit dependency on usb(4) in `files.amd64` so
it builds properly 100% of the time in a static kernel config.
Reviewed by: seuros
Differential Revision: https://reviews.freebsd.org/D59469