Merge commit 4d7292e58078 from llvm-project (by Minsoo Choo):
[libunwind] Unwind through AArch64 FreeBSD signal trampolines (#235065)
Retried from https://reviews.llvm.org/D155066.
Recognize signal trampolines using KERN_PROC_SIGTRAMP when unwind
metadata is unavailable. Restore the interrupted PC, LR, SP, general
registers, and valid floating-point registers.
Add coverage for unwinding out of an interrupted leaf function on both
regular and alternate signal stacks.
Assisted-by: GPT
MFC after: 1 week
Merge commit fd4113508a64 from llvm-project (by Minsoo Choo):
[libunwind] Support extended amd64 segment registers (#229176)
Raise the amd64 DWARF register limit to 59 and add RFLAGS, all six
segment selectors, FS.base, and GS.base to the register model. Capture
the extended state and restore it when resuming, using sigreturn() on
FreeBSD to restore selectors and bases together. Pack the state into the
existing context buffers without changing their public sizes or the
Windows XMM offsets.
Add tests for register access, signal-frame CFI recovery, register
bounds, and resume behavior.
Assisted-by: GPT
MFC after: 1 week
[mlir][linalg] Extend FoldReduceBroadcast to float maximumf/minimumf (#233417)
Extend `FoldReduceBroadcast` to fold `reduce(broadcast(x))` into `x`
for `arith.maximumf`/`arith.minimumf` when the init is the identity
(`-inf`/`+inf`). The identity check gains a `FloatAttr` branch.
Safety: `maximumf(-inf, x) == x` for all values — finite, ±inf,
-0.0, and NaN (NaN-propagating semantics). Only an exact ±inf init
passes the check; finite/NaN inits are rejected by negative tests.
`maxnumf`/`minnumf` are deliberately excluded: they ignore NaN, so
`reduce(broadcast(NaN))` with init `-inf` would yield `-inf`, not NaN
(covered by a negative test).
Assisted-by: AI.
Update qwz(4) firmware to 20261019.
Note for the Samsung Galaxy Book4 Edge qwz(4) support:
Thanks to Can Erkin Acar for getting the PCI line added for the ath12k
WCN7850 found in that laptop. Though, the firmware loading with this
version fails because of an issue with the AMSS file, which is being
investigated further.
ok kirill@
Unbreak i386 build
pa_dict::n_items is uint32_t and qsizetype is "int" on i386 and "long long"
on amd64. Cast n_items to unbreak the build.
Spotted by sthen@, thanks
15.2/relnotes: initial informaton added
SA and EN added, commits with Relnotes: commit message,
commits with contriib software, checked depreciation messages.
Approved by: re (implicit)
Pull up following revision(s) (requested by rin in ticket #1402):
sys/arch/alpha/alpha/vm_machdep.c: revision 1.124
sys/arch/alpha/alpha/machdep.c: revision 1.386
alpha: Align kernel stack pointer to 16-byte boundaries
as ABI requires. With this fix, full ATF run successfully completed
without any regression.
PR port-alpha/60865 NetBSD-current/alpha panics running getcwd test
OK thorpej@
Pull up following revision(s) (requested by rin in ticket #557):
sys/arch/alpha/alpha/vm_machdep.c: revision 1.124
sys/arch/alpha/alpha/machdep.c: revision 1.386
alpha: Align kernel stack pointer to 16-byte boundaries
as ABI requires. With this fix, full ATF run successfully completed
without any regression.
PR port-alpha/60865 NetBSD-current/alpha panics running getcwd test
OK thorpej@
Update pkgtools/nih to 0.17.0
Do not use All/ subdirectory of $CACHEDIR
Fix help messages for "history" and "clean-cache" subcommands
Minor clean-ups in nih.1
nih clean-cache: add option -q
nih.default.conf: fix default REPOSITORY for SunOS/SmartOS -- always use x86_64 machine arch in URL
nih, pkg_status: prepand PATH with @bindir@
Fix support for local REPOSITORY
Use PKG_TOOLS_BIN instead of SBINDIR for pkg_{info,admin,add,delete,create}
Depend on openipmi explicitly
This commit fixes an issue where openipmi was only being pulled in as an ipmitool recommends on 27, so it went missing from the image and restarting middlewared on IPMI hardware crashed with openipmi.service not found. Master already has openipmi as an explicit middlewared dep, so this adds the same here.
Pull up the following, requested by mrg in ticket #556:
external/mit/libX11/dist/src/os2Stubs.c delete
external/mit/libX11/dist/AUTHORS up to 1.1.1.4
external/mit/libX11/dist/COPYING up to 1.1.1.5
external/mit/libX11/dist/ChangeLog up to 1.11
external/mit/libX11/dist/Makefile.in up to 1.1.1.29
external/mit/libX11/dist/README.md up to 1.10
external/mit/libX11/dist/aclocal.m4 up to 1.10
external/mit/libX11/dist/compile up to 1.1.1.16
external/mit/libX11/dist/config.guess up to 1.1.1.21
external/mit/libX11/dist/config.sub up to 1.1.1.20
external/mit/libX11/dist/configure up to 1.11
external/mit/libX11/dist/configure.ac up to 1.11
external/mit/libX11/dist/depcomp up to 1.1.1.19
external/mit/libX11/dist/install-sh up to 1.1.1.17
external/mit/libX11/dist/ltmain.sh up to 1.1.1.21
external/mit/libX11/dist/missing up to 1.1.1.18
external/mit/libX11/dist/test-driver up to 1.1.1.16
[686 lines not shown]
Pull up following revision(s) (requested by riastradh in ticket #554):
sys/kern/vfs_vnode.c: revision 1.159
vdrain: Recompute target after each iteration.
This way if sysctl -w kern.maxvnodes=N fails, the vdrain task doesn't
perpetually keep trying to attain the unattainable.
Doesn't fix everything about racy access to desiredvnodes, but it
should help with the major symptom.
PR kern/60603: Sisyphean vdrain task
Pull up following revision(s) (requested by riastradh in ticket #1400):
sys/arch/sparc/sparc/machdep.c: revision 1.342
sparc: Load the signal handler _before_ resetting it, not after.
Should fix SA_RESETHAND.
PR port-sparc/59323: t_sigaction:sigaction_resethand test is failing
Pull up following revision(s) (requested by riastradh in ticket #1399):
sys/kern/sys_futex.c: revision 1.26
futex(2): Avoid returning early on timeout.
Rounding in the arithmetic leading into cv_timedwait_sig, and any
skew between the timecounter used by clock_gettime and the hardclock
timer used to wake cv_timedwait_sig, can lead cv_timedwait_sig to
wake up before the deadline as observable by clock_gettime.
futex(FUTEX_WAIT) is not supposed to do that, so ignore when
cv_timedwait_sig returns EWOULDBLOCK -- we'll notice the deadline has
passed in the next iteration anyway, if it has actually passed.
While here, make sure that we never pass less than 1 tick to
cv_timedwait_sig -- that turns it into cv_wait_sig, to wait
indefinitely with no timeout.
With this change, I have not seen any failures as reported in:
[8 lines not shown]