scx_rescue_admit(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… scx_rescue_admit β€” a Kernel API Manual moment (section 9, bestie)

okay so you know that manual section 9 energy? yeah. this is the scx_rescue_admit(9) page and it's lowkey about giving a task a lil rescue arc. let's get into it 🫢


✨ NAME ✨

scx_rescue_admit β€” literally the "start rescuing @p on @rq" girlie. that's the whole job. no cap. πŸŽ€


✨ SYNOPSIS ✨

void scx_rescue_admit (struct rq *rq , struct task_struct *p , s64 slice
);

three args, one void return, zero drama (the drama is in the DESCRIPTION, stay tuned πŸ’€).


✨ ARGUMENTS ✨

  • rq β€” the rq that p is being admitted on. it's the venue, the stage, the main character location 🌸
  • p β€” the task being admitted, off any DSQ. yes bestie, off any DSQ, that's the vibe check it has to pass first πŸ‘‘
  • slice β€” the CPU time to grant. this is the allowance, the little treat, the budget πŸ’–

✨ DESCRIPTION ✨

so here's the situation: the schedulers keep their normal control over p and may preempt it or reslice it β€” they're still very much running the show, not me, not you, not anyone πŸ™ˆ

and slice? it's measured on served CPU time against the snapshot taken here, so neither preemption nor reslicing shortens the rescue β€” that's the whole point. see scx_rescue_charge and scx_rescue_keep for the receipts ✨

and if the denial just keeps going and going? prolonged denial escalates into protected execution β€” see scx_rescue_timerfn for how that glow-up happens. it's giving consequences, periodt πŸ”₯

🌈 SEE ALSO 🌈

Kernel file ./kernel/sched/ext/sub.c, plus the whole friend group:

scx_skip_subtree_pre(9), scx_next_descendant_pre(9), scx_rescue_charge(9), scx_rescue_end(9), scx_rescue_keep(9), scx_rescue_accrue(9), scx_rescue_try_admit(9), scx_rescue_check_overload(9), scx_rescue_timerfn(9), scx_resolve_local_dsq(9), queue_sync_ecaps(9), scx_process_sync_ecaps(9), scx_unbypass_replay_ecaps(9), scx_discard_stale_ecaps_syncs(9), scx_rehome_task(9), scx_punt_task(9), scx_cgroup_claim_subtree(9), scx_cgroup_return_subtree(9), scx_cgroup_task_migrating(9), scx_cgroup_task_migrated(9), scx_cgroup_task_migrate_canceled(9), scx_bpf_sub_dispatch(9), scx_bpf_sub_grant(9), scx_bpf_sub_revoke(9), scx_bpf_sub_caps(9), scx_bpf_sub_kill_bstr(9)


that's the page, bestie β€” brought to you by the ./kernel/sched/ext girlies, dated October 2026, signed off as scx_rescue_admit(9) πŸ’…βœ¨ go rescue something iconic πŸ¦‹

πŸ“¦ where this page comes from