[PATCH] perf/x86: Add cond_resched() when allocate/release DS buffers

From: Namhyung Kim

Date: Mon Oct 27 2025 - 17:27:29 EST


On large systems, it's possible to trigger sched latency warning during
the DS buffer allocation or release. Add cond_resched() to avoid it.

Reported-by: Eric Dumazet <edumazet@xxxxxxxxxx>
Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxxx>
---
arch/x86/events/intel/ds.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/arch/x86/events/intel/ds.c b/arch/x86/events/intel/ds.c
index c0b7ac1c7594ea92..c8e90c5a8d3390ab 100644
--- a/arch/x86/events/intel/ds.c
+++ b/arch/x86/events/intel/ds.c
@@ -754,6 +754,7 @@ void release_ds_buffers(void)
if (x86_pmu.ds_pebs)
release_pebs_buffer(cpu);
release_bts_buffer(cpu);
+ cond_resched();
}
}

@@ -791,6 +792,8 @@ void reserve_ds_buffers(void)

if (bts_err && pebs_err)
break;
+
+ cond_resched();
}

if (bts_err) {
--
2.51.1.838.g19442a804e-goog