aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/bpf/progs/getpeername_unix_prog.c
diff options
context:
space:
mode:
authorBenjamin Segall <[email protected]>2023-09-30 00:09:30 +0000
committerPeter Zijlstra <[email protected]>2023-10-09 07:48:33 +0000
commitb01db23d5923a35023540edc4f0c5f019e11ac7d (patch)
treed6fd6bedd01a4137f41f4b54cb810022dae1af07 /tools/testing/selftests/bpf/progs/getpeername_unix_prog.c
parentsched/eevdf: Fix min_deadline heap integrity (diff)
downloadkernel-b01db23d5923a35023540edc4f0c5f019e11ac7d.tar.gz
kernel-b01db23d5923a35023540edc4f0c5f019e11ac7d.zip
sched/eevdf: Fix pick_eevdf()
The old pick_eevdf() could fail to find the actual earliest eligible deadline when it descended to the right looking for min_deadline, but it turned out that that min_deadline wasn't actually eligible. In that case we need to go back and search through any left branches we skipped looking for the actual best _eligible_ min_deadline. This is more expensive, but still O(log n), and at worst should only involve descending two branches of the rbtree. I've run this through a userspace stress test (thank you tools/lib/rbtree.c), so hopefully this implementation doesn't miss any corner cases. Fixes: 147f3efaa241 ("sched/fair: Implement an EEVDF-like scheduling policy") Signed-off-by: Ben Segall <[email protected]> Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Link: https://lkml.kernel.org/r/[email protected]
Diffstat (limited to 'tools/testing/selftests/bpf/progs/getpeername_unix_prog.c')
0 files changed, 0 insertions, 0 deletions