• Tejun Heo's avatar
    sched_ext/scx_qmap: Pick idle CPU for direct dispatch on !wakeup enqueues · 1edab907
    Tejun Heo authored
    
    
    Because there was no way to directly dispatch to the local DSQ of a remote
    CPU from ops.enqueue(), scx_qmap skipped looking for an idle CPU on !wakeup
    enqueues. This restriction was removed and sched_ext now allows
    SCX_DSQ_LOCAL_ON verdicts for direct dispatches.
    
    Factor out pick_direct_dispatch_cpu() from ops.select_cpu() and use it to
    direct dispatch from ops.enqueue() on !wakeup enqueues.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Acked-by: default avatarDavid Vernet <void@manifault.com>
    Cc: Dan Schatzberg <schatzberg.dan@gmail.com>
    Cc: Changwoo Min <changwoo@igalia.com>
    Cc: Andrea Righi <righi.andrea@gmail.com>
    1edab907
scx_qmap.c 4.24 KB