The BPF extensible scheduler class
The BPF extensible scheduler class
Posted Dec 4, 2022 17:46 UTC (Sun) by Manifault (guest, #155796)In reply to: The BPF extensible scheduler class by riking
Parent article: The BPF extensible scheduler class
If you look at [0], one of the struct sched_ext_ops callbacks is the following:
/**
* exit - Clean up after the BPF scheduler
* @info: Exit info
*/
void (*exit)(struct scx_exit_info *info);
That ops.exit() callback will be invoked with SCX_EXIT_ERROR_STALL [1] in the event of a hung task causing the BPF scheduler to be evicted, so BPF does have a chance to handle / record / etc the scheduler being evicted for timeouts.
[0]: https://lore.kernel.org/all/20221130082313.3241517-15-tj@...
[1]: https://lore.kernel.org/all/20221130082313.3241517-19-tj@...