linuxkpi: work with numpages > 1 in the set_pages_*() KPIs
These calls are used for buddy pages at least in drm's ttm_pool, which
leads to a panic when we invoke lowmem handlers and drm tries to shrink
the pool.
Cope with numpages > 1 by traversing the contiguous pages and executing
the adjustment there, as well, as suggested by markj@. Previous
versions have tried to use the corresponding `set_memory_*()` functions,
but it is believed that not updating `md.pat_mode` breaks subsequent
userspace mappings in ways that may result in things like screen tearing
or other artifacts when running i915kms.
This stabilized my amdgpu laptop running two VMs, chromium and a
concurrent buildworld.
Reviewed by: bz, markj
Differential Revision: https://reviews.freebsd.org/D57004
[AMDGPU] Add amdgcn.av.(load|store).b128 intrinsics (#191390)
The new `@llvm.amdgcn.av` family of intrinsics have availability and
visibility semantics as described in #191246. Each of them takes a scope
operand that is then translated to target-specific cache policy bits.
This allows the user to control how the side-effects of these loads and
stores are made visible to other threads.
This patch was extracted from #172090.
Co-authored-by: macurtis-amd <macurtis at amd.com>
Assisted-by: Claude Opus 4.6
[RISCV][P-ext] Set BITCAST to Custom for 64-bit packed vectors on RV32 (#198267)
Bitcasts between i64 and v8i8/v4i16/v2i32 used to expand to a stack
roundtrip, and the resulting concat_vectors let DAG combine split
paired-register arithmetic into two single-reg ops (e.g. v8i8 add became
two padd.b instead of one padd.db). The existing Is64BitCast handler in
LowerOperation already treats these as no-ops; this just routes through
it.
[lldb] Change ValueObject::Clone to take StringRef (NFC) (#198035)
Make `ValueObject`'s name being a `ConstString` more of an
implementation detail by changing `Clone` and `SetName` take a
`StringRef`.
brace_subst: fix single NUL byte overflow after reallocarray()
The check for sufficient space when performing brace substitution
did not take into account space for the terminating NUL byte.
From Thomas Habets
[Clang] Fixed a crash when instantiating an invalid out-of-line static data member definition in a local class (#196772)
Add check before the function that cause assertion.
Fix #176152, Fix #195416
find: Fix mix of character block size check
If multiple -size primaries were specified and any of the values
had the 'c' suffix, it was applied to all values and not just the
one that ended with 'c'. The divsize setting is now stored in the
plan, not a global.
From Thomas Habets
usr.sbin/ifstated: timestamp sync external tests
When external_exec() runs a test synchronously, it refreshes prevstatus
but left lastexec unchanged. A later status change could therefore be
ignored by eval_state(), because that code gates body evaluation on the
first external test timestamp for the current state.
Set lastexec together with prevstatus for synchronous runs; this keeps
the cached test status and execution time consistent across state
re-entry.
OK: deraadt@
[llvm] Fix DEMANGLE_ABI for MinGW (#198288)
Exclude MinGW from __declspec(dllimport) like LLVM_ABI in
llvm/include/llvm/Support/Compiler.h does. MinGW auto-exports all DLL
symbols, so __declspec is not needed and causes undefined __imp__
references when linking static libraries.
Merge tag 'perf-tools-fixes-for-v7.1-2026-05-18' of git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools
Pull perf-tools fixes
"An usual sync-up for the header files and related code:
- copy headers that are used for perf trace syscall beautifier
- update the beautifier scripts according to the changes
- don't show differences in the headers by default"
* tag 'perf-tools-fixes-for-v7.1-2026-05-18' of git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools:
perf trace: Update beautifier script for clone flags
perf trace: Add beautifier script for fsmount flags
perf build: Add make check-headers target
perf trace: Sync uapi/linux/sched.h with the kernel source
perf trace: Sync uapi/linux/mount.h with the kernel source
perf trace: Sync uapi/linux/fs.h with the kernel source
perf trace: Sync linux/socket.h with the kernel source
cifs: Fix undefined variables
Fix a couple of undefined variables introduced by the patch to fix tearing
on ->remote_i_size and ->zero_point. For some reason, make W=1 with gcc
doesn't give undefined variable warnings (but clang does).
Fixes: 2c8f4742bb76 ("netfs: Fix potential for tearing in ->remote_i_size and ->zero_point")
Reported-by: kernel test robot <lkp at intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202605031459.eX5UbO3K-lkp@intel.com/
Closes: https://lore.kernel.org/oe-kbuild-all/202605021450.ca5QGqLH-lkp@intel.com/
cc: Steve French <sfrench at samba.org>
cc: Paulo Alcantara <pc at manguebit.org>
cc: Matthew Wilcox <willy at infradead.org>
cc: Christian Brauner <brauner at kernel.org>
cc: linux-cifs at vger.kernel.org
cc: netfs at lists.linux.dev
cc: linux-fsdevel at vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
wtap: use typed rssi and noise floor values
Adjust the rssi and nf arguments to typed int8_t and adjust the maths
for rssi to be consistant with what net80211 expects.
Sponsored by: The FreeBSD Foundation
Reviewed by: lwhsu, adrian
Differential Revision: https://reviews.freebsd.org/D57020
(cherry picked from commit d201e4e8491901d1de6bcaeb581a0bf958bf86f2)
net80211: define a type for rssi values
Due to net80211 keeping values in 0.5dBm relative to the noise floor
an int8_t is not good enough to prevent a double wrap around, which
means the reported rssi values can be wrong (see D50928 or likely
a commit in the future for more information).
In order to address the problem and not break the userspace API,
start by defining a type within the kernel and use that. In a
next step we will then update the int8_t to int16_t to avoid the
problem up to the ioctl code. This will then allow us to work
on the the user space API indepedently (see PR 293016 for possible
impact outside the base system).
No functional changes intended.
Sponsored by: The FreeBSD Foundation
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D57021
[2 lines not shown]
fwget: update realtek and intel pci entries
For Realtek we only add new entries.
For Intel the old way of extracting IDs from the driver no longer
works. The new list is shortened as we drop more specific entries
which were already covered by wildcard entries. The new lists are
also sorted within the groups.
There are 4 entries the new driver no longer carries but are still
present in older versions, so we keep them manually.
Sponsored by: The FreeBSD Foundation
(cherry picked from commit ca67cfa5237f7ac537ca8611054b5af2098e2d86)