summaryrefslogtreecommitdiff
path: root/include/uapi/linux
diff options
context:
space:
mode:
authorvineash <vineash30640@gmail.com>2026-10-13 16:13:20 +0800
committerPeter Zijlstra <peterz@infradead.org>2026-10-16 09:49:05 +0200
commitf5a78ecccd98a04c47cea1cd63c2a2fdce8a4b48 (patch)
treeb04656ff72be47c9ca7099be3fa0df7afdd544f3 /include/uapi/linux
parent6350de8671b94afb7691d110f63bcda42f658a69 (diff)
downloadlinux-next-f5a78ecccd98a04c47cea1cd63c2a2fdce8a4b48.tar.gz
linux-next-f5a78ecccd98a04c47cea1cd63c2a2fdce8a4b48.zip
perf/x86: Don't WARN when the ext_regs_buf allocation fails
reserve_ext_regs_buffers() wraps the per-CPU ext_regs_buf allocation in WARN_ON_ONCE(). The allocator already prints a warning with a stack dump when a GFP_KERNEL allocation fails, so the WARN only repeats it, which Documentation/process/coding-style.rst asks not to do. The failure is also handled: the buffers are freed again, the event is still created, and events that ask for SIMD or extended register sampling are rejected with -ENOMEM in x86_pmu_hw_config() and event_simd_regs_validate(). syzkaller hit this with fault injection on next-20261002. The trigger is a plain hardware cycles event opened while no other x86 PMU event exists, with the allocation failed: !per_cpu(ext_regs_buf, cpu) WARNING: arch/x86/events/core.c:441 at reserve_ext_regs_buffers arch/x86/events/core.c:441 [inline] WARNING: arch/x86/events/core.c:441 at x86_reserve_hardware+0x6ff/0x880 arch/x86/events/core.c:458 Call Trace: __x86_pmu_event_init arch/x86/events/core.c:825 [inline] x86_pmu_event_init+0x109/0xc50 arch/x86/events/core.c:3003 perf_try_init_event+0x140/0xbc0 kernel/events/core.c:13261 perf_init_event kernel/events/core.c:13365 [inline] perf_event_alloc+0x2145/0x5680 kernel/events/core.c:13640 __do_sys_perf_event_open+0x669/0x2d40 kernel/events/core.c:14185 do_syscall_64+0x12c/0x7b0 arch/x86/entry/syscall_64.c:84 entry_SYSCALL_64_after_hwframe+0x77/0x7f Drop the WARN_ON_ONCE(). This matches reserve_ds_buffers() and reserve_lbr_buffers(), which also handle allocation failure without a warning. Fixes: b84c96283684 ("perf/x86: Enable XMM register sampling for non-PEBS events") Assisted-by: Claude:claude-opus-5-5 syzkaller Signed-off-by: vineash <vineash30640@gmail.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://patch.msgid.link/179187920064.3441876.15687522011658301558@gmail.com
Diffstat (limited to 'include/uapi/linux')
0 files changed, 0 insertions, 0 deletions