tools/sched_ext: Fix data header access during free in scx_sdt

Fix a pointer arithmetic error in scx_sdt during freeing that
causes the allocator to use the wrong memory address for the
allocation's data header.

Fixes: 36929ebd17 ("tools/sched_ext: add arena based scheduler")
Signed-off-by: Emil Tsalapatis <emil@etsalapatis.com>
Acked-by: Andrea Righi <arighi@nvidia.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
Emil Tsalapatis 2026-02-01 19:42:08 -05:00 committed by Tejun Heo
parent bd4f0822f4
commit 2e06d54ea9

View file

@ -312,7 +312,7 @@ int scx_alloc_free_idx(struct scx_allocator *alloc, __u64 idx)
pos = idx & mask;
data = chunk->data[pos];
if (likely(data)) {
data[pos] = (struct sdt_data) {
*data = (struct sdt_data) {
.tid.genn = data->tid.genn + 1,
};