summaryrefslogtreecommitdiff
path: root/drivers/usb
diff options
context:
space:
mode:
authorPeter Zijlstra <peterz@infradead.org>2024-05-23 12:25:32 +0200
committerPeter Zijlstra <peterz@infradead.org>2024-08-17 11:06:44 +0200
commit152e11f6df293e816a6a37c69757033cdc72667d (patch)
tree683c09b57827c21d70d2eb56cfee30c368a8ec66 /drivers/usb
parente1459a50ba31831efdfc35278023d959e4ba775b (diff)
sched/fair: Implement delayed dequeue
Extend / fix 86bfbb7ce4f6 ("sched/fair: Add lag based placement") by noting that lag is fundamentally a temporal measure. It should not be carried around indefinitely. OTOH it should also not be instantly discarded, doing so will allow a task to game the system by purposefully (micro) sleeping at the end of its time quantum. Since lag is intimately tied to the virtual time base, a wall-time based decay is also insufficient, notably competition is required for any of this to make sense. Instead, delay the dequeue and keep the 'tasks' on the runqueue, competing until they are eligible. Strictly speaking, we only care about keeping them until the 0-lag point, but that is a difficult proposition, instead carry them around until they get picked again, and dequeue them at that point. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Valentin Schneider <vschneid@redhat.com> Tested-by: Valentin Schneider <vschneid@redhat.com> Link: https://lkml.kernel.org/r/20240727105030.226163742@infradead.org
Diffstat (limited to 'drivers/usb')
0 files changed, 0 insertions, 0 deletions