[AMDGPU] Support i16 element types for tbuffer D16 load/store (#201420)
Detect D16 by element bit width rather than matching f16 specifically,
so integer i16 elements take the same packed/unpacked path
webshell: fix silent reader/writer thread death and fd lifecycle
The reader thread treated any os.read() error on the pty master as
terminal. login(1) calls vhangup() at session start, revoking the
slave before reopening it; a read landing in that window returns EIO
and permanently killed the reader while the shell kept running. The
UI received "connected" but no further output. Treat read/write EIO
as fatal only when the child is gone, retrying with a 50ms backoff
otherwise.
abort() closed master_fd while the reader/writer threads still used
the raw fd number. close() does not wake a thread parked in poll(),
and each poll()/read() call re-resolves the number, so a freed slot
recycled by another open() (e.g. the next session's forkpty) could
receive this session's I/O. abort() now only signals: it sets the
die flag, queues a sentinel to unblock the writer, and terminates
the child, whose death wakes the reader via EOF/HUP. run() reaps
with a blocking waitpid, joins both threads, and only then closes
master_fd. A guard after forkpty covers abort() racing ahead of the
[5 lines not shown]
[libunwind][test][AIX] Add C API test for unwinding from AIX VAPI (non-signal-handler case) (#209306)
Test detection, during stepping, of the backchain mutation introduced by
a VAPI call (see https://github.com/llvm/llvm-project/pull/209280).
Further, test resumption of contexts using cursors obtained while a VAPI
is active on the thread.
Testing is done via FileCheck inspection of trace output enabled by
`LIBUNWIND_PRINT_UNWINDING=1`. When Live Library Update is not enabled,
synthetic trace output is generated by the test program itself.
---------
Assisted-by: IBM Bob
[SLP] Vectorize select-addressed loads as masked-load blends
Recognize loads whose address is chosen per lane via
select(cond, A, B) and vectorize them as two masked loads blended
by a select, instead of gathering.
Fixes case 6 from #206367
Reviewers: hiraditya, RKSimon, bababuck
Pull Request: https://github.com/llvm/llvm-project/pull/210455
[flang][Lower] Admit opaque terms to real sum reassociation
First part of follow-ups for generalisations requested in #207377.
The split-sum eligibility check rejected any RHS containing explicit
parentheses or subtraction, even though the Add flattener already
preserves every non-Add subtree as one opaque term.
Remove those blanket guards and their unused predicates. Document the
opaque-term invariant and extend the test to cover parenthesized
additions and subtractions, whole-RHS parentheses, and subtraction
terms.
Assisted-by: Codex
BRT: Implement partial bv_entcount writing
From the introduction of BRT the bv_entcount was always written all
at once, even though there was a mechanism for partial writing.
Implement one finally to slightly reduce per-TXG dirty data and write
inflation on large pools. On 1PB pool it meant 128MB write for each
TXG modifying BRT.
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Alexander Motin <alexander.motin at TrueNAS.com>
Closes #18821
zdb: output refcounts from verify_spacemap_refcounts()
Output information about refcounts when there is refcount mismatch.
Use plain uint64_t even as the values are expected to not be large.
Also use unsigned as we should never get negative refcounts there.
Reviewed-by: Allan Jude <allan at klarasystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Reviewed-by: Alexander Motin <alexander.motin at TrueNAS.com>
Signed-off-by: Toomas Soome <tsoome at me.com>
Closes #18809
[lldb] Fix Unicode code point formatting to use proper notation (#211131)
- use uppercase hex digits
- only emit "U+" notation for valid code points (<= U+10FFFF),
zero-padded to a minimum of four digits.
rdar://173817553
Assisted-by: claude
ospf6d: preserve configured interface type on link update
When an interface undergoes a link state change (RTM_IFINFO),
if_update() unconditionally overwrites iface->type based on current
interface flags. This causes interfaces explicitly configured with "type
p2p" in ospf6d.conf to revert to broadcast (IF_TYPE_BROADCAST) on link
bounce.
Introduce F_IFACE_TYPE to track whether the interface type was set by
configuration, and only auto-derive the type from interface flags when
this flag is not set.
Reported and tested by Atanas Vladimirov.
OK claudio@
[flang][cuda] Fix cuf-alloc-delay for host-associated allocatables (#211103)
`cuf-alloc-delay` sinks a managed descriptor's `cuf.alloc` group
(`{cuf.alloc, fir.store, fir.declare}`) to just before its first use, to
defer the managed allocation. It special-cased the store of the descriptor
into a host-association tuple slot (`fir.store` to a `fir.llvm_ptr`): it did
not count that store (nor the call that consumes the tuple) as a use, and moved
the store along with the group. As a result, when a managed allocatable descriptor
is stored into a host-association tuple and passed to an internal procedure, the group
could be sunk **past** the internal-procedure call that reads the tuple, so the
callee observed an uninitialized descriptor. On more complex tuples, moving the
host-association store also broke SSA dominance, producing
`operand #1 does not dominate this use`.
With this PR, `findDelayTarget` now treats **every** use of the
descriptor as a real use, including the host-association store. The group is only ever sunk to
*before* the first use, and the host-association store is never moved (it reads
its own `fir.coordinate_of` slot). This keeps the descriptor initialized before
the tuple is consumed and is dominance-safe by construction.
[Flang] Return APInt from getIntIfConstant (#211233)
Preserve the full bit width of integer attributes when extracting
constants from FIR values. Return llvm::APInt directly and update
fixed-width consumers to use checked signed extraction.
This avoids truncating or asserting on constants wider than 64 bits
while retaining existing fallback behavior at int64_t boundaries.
This should be NFC everywhere we didn't have a latent overflow bug. I
didn't go so far as updating the interfaces of every function built on
top of getIntIfConstant: this is mostly to make an APInt version
available because it looks useful for another PR. Fixing the builder API
to use APInt would be a larger change - let me know if anyone wants to
see that.
Assisted-by: Codex
[lldb][test] Skip more WebAssembly-unsupported API tests (#211305)
Skip tests that exercise features WebAssembly does not provide:
expression evaluation, registers, an ABI plugin, and unmapped memory
pages.
[AMDGPU] Move SGPR Count Queries into TargetParser (#209848)
Relocated SGPR queries from AMDGPU backend into the public TargetParser.
Part of resolving a comgr issue
(https://github.com/ROCm/llvm-project/issues/3298) to reduce
comgr-isa-metadata.def duplication.
Assisted by: Claude Code
NAS-141886 / 26.0.0-RC.1 / Do not crash rsync.get_connect_kwargs on null remote_host (#19380)
Original PR: https://github.com/truenas/middleware/pull/19366
Co-authored-by: themylogin <themylogin at gmail.com>
security/pdfrip: import pdfrip-3.0.0
pdfrip is a fast multithreaded PDF password cracking utility written
in Rust with support for wordlist-based dictionary attacks, date,
number range, and alphanumeric brute-forcing, and a custom query
builder for password formats.
[LLVM] Remove 'LLVM_LIBC_GPU_BUILD' logic (#211265)
Summary:
This is a holdover from how we used to handle this stuff. We should just
dirctly check the triple for setting the cross-compiling emulator and we
can directly introspect into the build tree for the lit config like we
already do for flang-rt.
[MC][NFC] Share some code between MasmParser and AsmParser
Factor out printIncludeStackForDiagnostic() to SourceMgr in preparation
for a follow-up commit that changes the output here. This avoids needing
to update both of them. Also add two more tests for the current output.
Pull Request: https://github.com/llvm/llvm-project/pull/210731
vmd(8): guard synchronous imsg channel with a mutex.
Serialize vcpu access to the synchronous imsg channel for communicating
PCI register access to virtio device child processes. If vmd ever
becomes MP, VCPUs could interleave during the io emulation on the imsg
channel.
Report and original diff by Andrew Griffiths. Modified to move the
mutex into the global state of the vm process instead of per-device.
ok hshoexer@
[Flang][OpenMP] Add support for interop construct (#203959)
This adds support for the OpenMP interop construct, which enables
interoperability with foreign runtime environments (e.g., CUDA, HIP).
The init, use, and destroy action clauses are lowered from the Fortran
parse tree to MLIR interop ops and translated to the appropriate runtime
calls. The omp_lib module is extended with interop query API interfaces,
property constants, and return code constants. A semantics fix relaxes
the depend/targetsync constraint for use/destroy directives where the
interop type was established at a separate init site. Unsupported depend
clauses and prefer_type selector-list forms emit explicit diagnostics
instead of being silently dropped.
Assisted-by: Claude Opus 4.6
[MLIR][Python] Remove stale NumPy detection message (#211235)
NumPy stopped being requested as a CMake Python component when its
unused build-time dependency was removed in #108465 . Remove the
remaining status message, which now prints empty version and include
directory values.