nsupdate: isolate each PTR in its own transaction
Batching IPv4 (in-addr.arpa) and IPv6 (ip6.arpa) PTRs in one DNS
UPDATE made BIND reject the out-of-zone record with NOTZONE, failing
AD domain joins with IPv6 enabled. Send each PTR in its own
transaction (best-effort, logged); forward A/AAAA stay one
transaction (fatal). Move the plan/run logic to utils/dns.py and add
unit tests.
[lldb] Don't create functions for DWARF dead-code tombstones (#205691)
A function the linker eliminated (dead-stripped, or inlined into all its
callers) keeps a DWARF subprogram DIE whose DW_AT_low_pc is a "(dead
code)" tombstone: the all-ones value for the unit's address size. LLDB
has no explicit tombstone check; it only rejects dead code where
Address::IsValid() happens to catch it, i.e. when the tombstone equals
the 8-byte LLDB_INVALID_ADDRESS. On wasm32 the tombstone is the 4-byte
0xffffffff, which IsValid() lets through, so LLDB builds a section-less,
module-less lldb_private::Function and later crashes in
Block::GetRangeContainingAddress (reached from
Function::GetPrologueByteSize) dereferencing the empty module.
Require the low PC to resolve to a section in
SymbolFileDWARF::ParseFunction, using Address::IsSectionOffset() instead
of IsValid(). This is the single point where functions are created, so
it covers both the DW_AT_low/high_pc and DW_AT_ranges encodings, and it
rejects any low PC that doesn't land in real code regardless of address
width. It also avoids special-casing the all- ones tombstone value,
[2 lines not shown]
[mlir][memref] Add invariant attribute to memref.load (#206197)
Add an optional `invariant` attribute to `memref.load`, modeled on the
existing `nontemporal` attribute. When set, it indicates the referenced
memory location holds the same value at all points in the program where
it is dereferenceable, so the load may be treated as invariant.
The MemRefToLLVM LoadOpLowering forwards the attribute to the invariant
flag of `llvm.load` (which lowers to `!invariant.load`).
[flang][fir] Add invariant attribute to fir.load (#206204)
Add an optional `invariant` unit attribute to `fir.load`, modeled on the
existing `nontemporal` attribute. When set, it indicates the referenced
memory location holds the same value at all points in the program where
it is dereferenceable, so the load may be treated as invariant.
The FIR-to-LLVM LoadOpConversion forwards the attribute to the invariant
flag of `llvm.load` (which lowers to `!invariant.load`).
`!invariant.load` metadata might be useful for OpenACC/OpenMP offload,
e.g. by using MLIR AA we can mark `fir.load`s inside the GPU kernels
letting the target codegen to generate read-only data cache load
instructions.
[flang][NFC] Avoid scoped-origin collection and instance churn in getCallModRef. (#206172)
getCallModRef computed the source of the queried variable via a freshly
constructed fir::AliasAnalysis and with the default collectScopedOrigins=true.
Both are unnecessary:
- The resulting Source is only used to classify the variable (kind,
attributes, escape checks); getCallModRef never inspects its
scopedOrigins. Collecting them is dead work, and it triggers the expensive
getDeclarationScope/dominance bookkeeping on every call-modref query.
- A fresh fir::AliasAnalysis discards this instance's caches.
getCallModRef is only reached from getModRef, and getSource/alias
never call getModRef, so reusing 'this' is safe (no recursion).
Reuse 'this' and pass collectScopedOrigins=false for the classification
query. The actual aliasing decision is still made by the separate alias(arg,
var) call, which builds its own Sources (with scoped origins, subject to the
multi-scope gate), so mod-ref precision is unchanged. This significantly
reduces FIR AA overhead in LICM-heavy compilations.
Use truenas_streams_xattr VFS module name for Samba 4.24
Samba 4.24 forks the TrueNAS streams_xattr customizations into a
separate module, truenas_streams_xattr. Emit that name in the
generated vfs objects line so shares get the TrueNAS backend instead
of silently falling back to upstream's streams_xattr. Parametric
options keep the streams_xattr: prefix (the module still reads them
there), so only the module name changes.
(cherry picked from commit 9d45b2ea21b457c013151df444d930c89aeb41d3)
NAS-141586 / 27.0.0-BETA.1 / Use truenas_streams_xattr VFS module name for Samba 4.24 (#19224)
Samba 4.24 forks the TrueNAS streams_xattr customizations into a
separate module, truenas_streams_xattr. Emit that name in the generated
vfs objects line so shares get the TrueNAS backend instead of silently
falling back to upstream's streams_xattr. Parametric options keep the
streams_xattr: prefix (the module still reads them there), so only the
module name changes.
[PGO][AMDGPU] Add uniformity-aware offload profile format and instrumentation (#190708)
Add the producer-side format and instrumentation pieces that layer on
top
of the basic HIP offload PGO support.
This extends the raw/indexed profile format with wave size and uniform
counters, teaches llvm-profdata to read and merge them, adds the AMDGPU
sampling runtime, and emits block.uniformity.profile metadata during
PGO instrumentation.