[libsycl] Take MDataCollectionMutex in getDeviceKernelInfo() (#228099)
getDeviceKernelInfo() searched MDeviceKernelInfoMap without holding
MDataCollectionMutex, so a kernel launch could race with the
registerFatBin() or unregisterFatBin(). Fixing it by addition of lock.
Report an unknown kernel name with sycl::errc::runtime instead of
asserting. Unlike registration, which runs from a module's static
initialization where nothing can catch, this runs from a user kernel
submission, so the exception reaches the user's handler.
Assited-by: Claude Code.
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>
nuageinit: Allow the userdata script to run before firstboot* rc services
Allowing nuageinit user scripts to run before these makes it possible to
customize official BASIC-CI and BASIC-CLOUDINIT FreeBSD images.
This was requested by KDE for their CI.
Approved by: cperciva
Pull-Request: https://ron-dev.freebsd.org/FreeBSD/src/pulls/60
(cherry picked from commit 16e47f317c4ce2be5fed530bf8a9af9f9bf55364)
[libclc][test] Fix a regression in libclc/test/work-item/get_group_id.cl (#228621)
Add a missing noundef in libclc/test/work-item/get_group_id.cl from a
recent commit.
Fixes: 552ea17e0a93 ([ValueTracking] Handle zext/sext in
computeConstantRange (#227726), 2026-09-30)
[libsycl] Fix and test sycl::item conversion (#227692)
Assisted-by: Claude Code.
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>
bsd.lib.mk: only ctfmerge if objfiles have a CTF section
PR: 299013
Reported by: Trond.Endrestol at ximalas.info
Reviewed by: emaste
Fixes: 222210c6a822 ("libgcc_s: add libgcc_s_asneeded.so wrapper for gcc 16")
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D60252
igc: Fix the flow control sysctl
dev.igc.N.fc read and wrote a function-static variable shared by every
igc device, so a read returned the last value written to any of them (3
until the first write), not the state of the device. The softc value
started as 0, which is also the value of "no flow control", while the
hardware was set up for full flow control. As a result:
- Writing 0 was taken for no change and did nothing, unless another
value had been written to that device before.
- igc_reset() took a softc value of 0 for "not set", so a device set to
0 went back to full flow control on the next init.
- With more than one receive queue the driver enabled per-queue drop
(SRRCTL.DROP_EN), which is meant for a MAC that does not send pause
frames, although the MAC was told to send them.
- Values out of range were accepted and ignored.
A write only forced the MAC's flow control bits. The pause bits
advertised to the link partner, the pause thresholds and DROP_EN stayed
[24 lines not shown]
[LV] Fix double-application of FindIV reduction expression in epilogue (#219362)
When vectorizing loops with a **FindIV reduction** that includes a sunk
expression, LLVM miscompiles the code if an epilogue vector loop is
triggered by later decisions
Specifically, later optimization passes like `simplifyRecipe` can
transform the sunk operation (here, converting `mul` to a bit-shift
`shl`), converting it into a `VPInstruction`. This tricks the safety
check `hasUnsupportedHeaderPhiRecipe`, which inspects recipe types 2nd
time wrongly. This triggers epilogue vectorization to be enabled causing
the sunk expression to be calculated **twice** (once after the main loop
and once after the epilogue), producing incorrect results.
**Approach** - Added an `ExpressionSunk` bool flag to
`VPReductionPHIRecipe` to track the sinking of the FindIV reduction
expression. updated the `VPlanTransforms::optimizeFindIVReductions` to
set `ExpressionSunk = true` when sinking the expression, and refactored
hasUnsupportedHeaderPhiRecipe` to inspect
[4 lines not shown]
[flang][OpenMP] Perform checks on features from different versions
The check for DETACH and MERGEABLE used together was only done when
the OpenMP version was set to the versions that allow both clauses.
The use of these clauses is accepted with a warning in older versions
as well, so make sure to perform the checks for all versions.
devel/py-dbus: devel/py-dbus: unbreak with python 3.13+, fix plist
Backport upstream commit to fix build with Python 3.13+
Fix plist, this unbreak packaging with free-treaded versions of Python
Limit minimal allowed Python version to 3.12
Revieved by: arrowd (desktop)
NAS-144166 / 25.10.8 / Fix cluster_mode for ALUA extents with a period or slash in the name (#19912)
SCST does not allow a period or a slash in a device name, so the SCST
configuration uses a changed name for those extents. The active node
used the changed name to check whether an extent was in cluster mode,
but the lists it checked hold the original names. The check always
failed for these extents and the configuration said cluster mode was
off. The next reload then closed and reopened the device, which removed
its LUNs for a moment and caused permanent device loss on ESXi.
OpenSSH: Update to 10.4p1
Full release notes are available at
https://www.openssh.com/txt/release-10.4
Selected highlights from the release notes:
Potentially-incompatible changes
--------------------------------
* sshd(8): configuration dump mode ("sshd -G") now writes directives
in mixed case (e.g. "PubkeyAuthentication") whereas previously it
emitted only lower-case names.
* ssh(1), sshd(8): make the transport protocol stricter by
disconnecting if the peer sends non-KEX messages during a post-
authentication key re-exchange. Previously a malicious peer could
continue sending non-key exchange messages without penalty. These
would be buffered, causing memory to be wasted up until the
[73 lines not shown]
OpenSSH: Update to 10.2p1
Full release notes are available at
https://www.openssh.com/txt/release-10.2
Selected highlights from the release notes:
Bugfixes
--------
* ssh(1): fix mishandling of terminal connections when
ControlPersist was active that rendered the session unusable.
bz3872
Sponsored by: The FreeBSD Foundation
(cherry picked from commit e68aa5ab80ab57bdbcbe94dd2922a018d675e7f0)
openssh: Add date bump command to FREEBSD-upgrade instructions
Provide a convenient in-place sed edit command to update the FreeBSD
VersionAddendum dates with today's date.
Sponsored by: The FreeBSD Foundation
(cherry picked from commit 0ec81f6a531bf7b3b06e869c99295f3d4ab9ed8e)
openssh: Add reference for another local patch
A bug fix was committed locally and submitted upstream. Document it in
our upgrade instructions, as these sometimes take a long time before
getting merged.
Sponsored by: The FreeBSD Foundation
(cherry picked from commit 6531070132b0210aaaeb08c0dc93cb272bed348e)
OpenSSH: Update to 10.3p1
Full release notes are available at
https://www.openssh.com/txt/release-10.3
Selected highlights from the release notes:
* ssh(1), sshd(8): remove bug compatibility for implementations
that don't support rekeying. If such an implementation tries to
interoperate with OpenSSH, it will now eventually fail when the
transport needs rekeying.
* ssh(1), sshd(8): support IANA-assigned codepoints for SSH agent
forwarding, as per draft-ietf-sshm-ssh-agent. Support for the new
names is advertised via the EXT_INFO message. If a server offers
support for the new names, then they are used preferentially.
* ssh(1): add a ~I escape option that shows information about the
current SSH connection.
[15 lines not shown]
OpenSSH: Update to 10.1p1
Full release notes are available at
https://www.openssh.com/txt/release-10.1
Selected highlights from the release notes:
Potentially-incompatible changes
* ssh(1): add a warning when the connection negotiates a non-post
quantum key agreement algorithm.
* ssh(1), sshd(8): major changes to handling of DSCP marking/IPQoS
* ssh(1), sshd(8): deprecate support for IPv4 type-of-service (ToS)
keywords in the IPQoS configuration directive.
* ssh-add(1): when adding certificates to an agent, set the expiry
to the certificate expiry time plus a short (5 min) grace period.
[19 lines not shown]
[AMDGPU] Restore the default rounding mode before calls and returns (#222247)
SIModeRegister set a non-default mode for `llvm.fptrunc.round` and left
it live across the call boundary, where the caller assumes the default
[AMDGPU] Measure MFMA overwrite hazards at each instruction
Apply previously established processing to:
- VALU overwriting an MFMA result
- VALU overwriting a register an MFMA took as srcC
AI-assisted.
fixup! [AMDGPU] Measure MFMA read hazards at each producer
Reword the comments of the two tests where an exact srcC write must not
hide an earlier partial one: name the producers, give the nearer one's
window, and keep the farther one's window apart from the padding it
leaves. On gfx940+ the exact write now has a window of its own, since
two different MFMAs sharing an accumulator need wait states.
AI-assisted.
[AMDGPU] Measure MFMA read hazards at each producer
Introduce more sophisticated traversal to avoid the following traps:
- order-dependent traversal and discarding seen BBs despite shorter path
- mis-matching distance and window of different producers
Record the best distance per BB instead of a visited flag and sweep the
arrivals in nondecreasing distance (bucket queue). This pairs producers
with their actual distance to a consumer in one go.
Fixed scenarios:
- MFMA reading an MFMA result as srcA, srcB or srcC
- VALU, memory or export instruction reading an MFMA result
AI-assisted.
[AMDGPU][NFC] Extract the MFMA read-window calculation
Move the wait states a consumer needs before reading an MFMA result out
of checkMAIHazards90A into getMFMAReadWaitStates, taking the producer as
an argument, so a caller can ask about a specific producer. The caller
passes the producer the walk recorded, so nothing changes.
AI-assisted.
[DAG] Prefer sub(X, ~Y) while rewriting inc-of-add to sub-of-not (#226379)
Split off from #207695 - this reduces a movdqa to xmm0 on
CodeGen/X86/inc-of-add.ll in for SSE by swapping x and y, as sub writes
to the first operand.
NAS-144199 / 27.0.0 / Stop the SED unlock when the drive is busy (by yocalebo) (#19933)
The unlock tries the raw password first and then the two hashed forms
that sedutil made on Linux and on FreeBSD. Any failure moved on to the
next password. That is right when the drive rejects a password. It is
wrong when the wait for another SED operation on the drive ran out,
because no password was sent at all.
The unlock now stops on that timeout and returns its message. A rejected
password still moves on to the next one as before.
This needs the truenas_pylibsed change that raises TimeoutError for the
timeout. Without that change nothing is different.
Original PR: https://github.com/truenas/middleware/pull/19930
Co-authored-by: caleb <yocalebo at gmail.com>