if_bnxt: skip HW kTLS on old firmware and add a tunable to disable it
Older Thor2 firmware serves key context allocation requests very
slowly, about a second each. The driver allocates key contexts in
batches of 128, so setting up 500k sessions takes roughly 3900
requests and driver load appears to hang.
Enable hardware kTLS only when the firmware's HWRM interface version
is 1.10.3.99 or newer. Keep the full four-part version in
hwrm_spec_code_ext for the comparison.
Also add a disable_hw_ktls loader tunable that turns hardware kTLS off
for a device without unloading kTLS support, which helps isolate kTLS
problems in the field.
Reviewed by: gallatin
Sponsored by: Broadcom Inc
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D60977
[2 lines not shown]
if_bnxt: size MRAV from the AV split entry for backing store V2
On RoCE-capable Thor2, attach fails with
HWRM_FUNC_BACKING_STORE_CFG_V2 returning INVALID_PARAMS, as MRAV is
sized the pre-V2 way and the firmware's AV split value is sent as is.
Size MRAV from the AV split entry, and move the legacy entry-count
packing into bnxt_hwrm_func_backing_store_cfg().
Fixes: d5ce906da7c5 ("bnxt_en: Add backing store V2 support")
Reviewed by: gallatin
Sponsored by: Broadcom Inc
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D60976
(cherry picked from commit aca2e5fae3d9c3350b47ee3e7d00937a73dba9a9)
[mlir][nvgpu] Don't swizzle shared memory rows that aren't a power of 2 (#237179)
`nvgpu-optimize-shared-memory` miscompiles memrefs whose rows aren't a
power
of 2 long. The swizzle XORs the index of each 16-byte vector in a row
with low
bits of the row index. When a row holds a power of 2 number of vectors,
the
result is always an index in the same row, so the swizzle only reorders
each
row. Otherwise, the result can be past the end of the row: the access
then
lands in the next row and overwrites one of its vectors, or past the end
of
the buffer for the last rows.
Skip such memrefs and leave their accesses unswizzled.
Assisted-by: Claude
[orc-rt] Add sps::lookupInJITDylib controller-call wrapper (#239494)
sps::lookupInJITDylib asks the controller to look up a SymbolLookupSet
in the JITDylib identified by the given key address, calling the
controller handler identified by the new
orc_rt_tag_sps_lookupSymbolsInJITDylib tag.
Clients index the result by lookup-set position, so a controller result
whose length doesn't match the lookup set is reported as an error rather
than passed on.
This commit also adds DirectControllerAccess to the unit-test utilities:
a ControllerAccess that routes executor-to-controller calls to handlers
registered by tag and runs them on the calling thread. The new tests use
it to check that arguments and results survive the round trip; lookup
semantics belong to the controller and aren't tested here.
[Flang][OpenMP] Warn about SAVE variables in MAP w/o ALWAYS modifier (#209134)
When mapping a variable that has the SAVE attribute, a MAP clause is not
effective unless it has the ALWAYS modifier. The reason is that the
reference count of the variable on the device is infinite and thus no
data transfer occur when ALWAYS is not present. This is a common source
of errors and the compiler should warn about this behavior.
---------
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot at users.noreply.github.com>
devel/libnotify: check notify_get_server_info() return code and exit early if there's no notification daemon
silences vfprintf NULL messages when notify-send is run without dbus running.
ok ajacoutot@ (MAINTAINER)
[CIR][AMDGPU] Look through address_space views of __retval in insertSRetStores (#239151)
Summary:
- On AMDGPU, a non-trivial record is returned through a default address
space `sret` pointer, but `CIRGen` puts `__retval` in addrspace(5) and
uses it through an `address_space` cast.
- `insertSRetStores` replaced the alloca with the sret pointer even
though the types differ. The cast then became an identity cast:
`%0` = cir.cast address_space %arg0 : !cir.ptr<!rec_NT> ->
!cir.ptr<!rec_NT>`
- When the types differ, replace the alloca's `address_space` views with
the sret pointer instead, and erase the alloca once its return loads are
gone.
- Test: `amdgpu-sret-nontrivial.cir`
Relates to: https://github.com/llvm/llvm-project/issues/220471
Assisted by : claude opus 5.5
[clang] Update C++ DR status page (#239482)
This is a follow-up for #237113 that contains missing updates for the
C++ DR status page and fixes a typo in an issue status comment (it
didn't make it to the status page last time, so no one noticed).
www/{nginx,nginx-devel,freenginx}: 3rd-party modules management
Build the echo, headers_more, eval, set_misc, srcache, rds_json, rds_csv,
xss and drizzle modules from their own ports instead of bundling the
sources here.
Sponsored by: Netzkommune GmbH
www/nginx-module-set-misc: Add New Port
Sources of the set_misc module, which adds extra set_* directives on top
of the nginx development kit. Built by the nginx ports when their
SET_MISC option is enabled.
Sponsored by: Netzkommune GmbH
www/nginx-module-srcache: Add New Port
Sources of the srcache module, which provides subrequest based response
caching. Built by the nginx ports when their SRCACHE option is enabled.
Sponsored by: Netzkommune GmbH
www/nginx-module-xss: Add New Port
Sources of the xss module, which wraps JSON output in a JavaScript
callback. Built by the nginx ports when their XSS option is enabled.
Sponsored by: Netzkommune GmbH
www/nginx-module-rds-json: Add New Port
Sources of the rds_json module, which turns resty-dbd-stream output into
JSON. Built by the nginx ports when their RDS_JSON option is enabled.
Sponsored by: Netzkommune GmbH
www/nginx-module-rds-csv: Add New Port
Sources of the rds_csv module, which turns resty-dbd-stream output into
CSV. Built by the nginx ports when their RDS_CSV option is enabled.
Sponsored by: Netzkommune GmbH
www/nginx-module-headers-more: Add New Port
Sources of the headers_more module, which sets, adds and clears request
and response headers. Built by the nginx ports when their HEADERS_MORE
option is enabled.
Sponsored by: Netzkommune GmbH
www/nginx-module-echo: Add New Port
Sources of the echo module, built by the nginx ports when their ECHO
option is enabled.
Sponsored by: Netzkommune GmbH
www/nginx-module-eval: Add New Port
Sources of the eval module, which evaluates a subrequest response into
variables. Built by the nginx ports when their HTTP_EVAL option is
enabled.
Sponsored by: Netzkommune GmbH