diff options
author | Jake Hillion <jake@hillion.co.uk> | 2025-03-26 01:41:52 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-04-20 11:23:19 +0300 |
commit | 43e93ba586cf8ec62a1f766b1532140b94c8f1d1 (patch) | |
tree | 4b8e6fe0f34bccb3811397b04fdea1f95aa9669c /tools/perf/scripts/python/arm-cs-trace-disasm.py | |
parent | ccd66a51ca65a572a64d1e46be53e0583271ae60 (diff) | |
download | linux-43e93ba586cf8ec62a1f766b1532140b94c8f1d1.tar.xz |
sched_ext: create_dsq: Return -EEXIST on duplicate request
commit a8897ed8523d4c9d782e282b18005a3779c92714 upstream.
create_dsq and therefore the scx_bpf_create_dsq kfunc currently silently
ignore duplicate entries. As a sched_ext scheduler is creating each DSQ
for a different purpose this is surprising behaviour.
Replace rhashtable_insert_fast which ignores duplicates with
rhashtable_lookup_insert_fast that reports duplicates (though doesn't
return their value). The rest of the code is structured correctly and
this now returns -EEXIST.
Tested by adding an extra scx_bpf_create_dsq to scx_simple. Previously
this was ignored, now init fails with a -17 code. Also ran scx_lavd
which continued to work well.
Signed-off-by: Jake Hillion <jake@hillion.co.uk>
Acked-by: Andrea Righi <arighi@nvidia.com>
Fixes: f0e1a0643a59 ("sched_ext: Implement BPF extensible scheduler class")
Cc: stable@vger.kernel.org # v6.12+
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/perf/scripts/python/arm-cs-trace-disasm.py')
0 files changed, 0 insertions, 0 deletions