THE VF RESUME STATE MACHINE(9)
π The VF RESUME state machine(9) π
okay bestie, so this is a page straight out of the Kernel API Manual and it's literally just the glow-up era of the VF RESUME state machine β the whole flowchart of it, in all its ASCII-art glory. no cap, it's giving "my crush drew me a diagram on a napkin" energy and I am obsessed π
here's the vibe:
(PAUSED)<-----------------<------------------------o
| resume | ....V............................RESUME_WIP...... : : o
: o-------<-----busy : |
: / / : |
: RESUME_SEND_RESUME ---failed--->--------o--->(RESUME_FAILED)
: / : |
: acked rejected---->---------o--->(MISMATCH)
: / :
:....o..............o...............o.....o.....:
| | | completed flr stop restart-->(READY)
| | |
V .....V..... ......V.....
(RESUMED) : FLR_WIP : : STOP_WIP :
:.........: :..........:
like, the states are all in there β (PAUSED), RESUME_WIP, RESUME_SEND_RESUME, (RESUME_FAILED), (MISMATCH), (RESUMED), FLR_WIP, STOP_WIP, (READY) β and the transitions have their own little labels too (resume, busy, failed, acked, rejected, completed, flr, stop, restart). it's a whole journey fr fr π¦
and if you want the full picture, not just this one slice? the page literally says: for the full state machine view, see The VF state machine_ β¨
πΈ SEE ALSO πΈ
okay so this source file is the main character here, no big deal:
Kernel file ./drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c
and it wants you to go read all of these next (yes, all of them, bestie β we don't skip the reading list π):
The VF state machine(9)The VF PAUSE state machine(9)xe_gt_sriov_pf_control_pause_vf(9)xe_gt_sriov_pf_control_resume_vf(9)The VF SAVE state machine(9)xe_gt_sriov_pf_control_check_save_data_done(9)xe_gt_sriov_pf_control_check_save_failed(9)xe_gt_sriov_pf_control_process_save_data(9)xe_gt_sriov_pf_control_trigger_save_vf(9)xe_gt_sriov_pf_control_finish_save_vf(9)The VF RESTORE state machine(9)xe_gt_sriov_pf_control_check_restore_failed(9)xe_gt_sriov_pf_control_restore_data_done(9)xe_gt_sriov_pf_control_process_restore_data(9)xe_gt_sriov_pf_control_trigger_restore_vf(9)xe_gt_sriov_pf_control_finish_restore_vf(9)The VF STOP state machine(9)xe_gt_sriov_pf_control_stop_vf(9)The VF FLR state machine(9)xe_gt_sriov_pf_control_prepare_flr(9)xe_gt_sriov_pf_control_trigger_flr(9)xe_gt_sriov_pf_control_sync_flr(9)xe_gt_sriov_pf_control_wait_flr(9)The VF FLR Flow with GuC(9)xe_gt_sriov_pf_control_process_guc2pf(9)xe_gt_sriov_pf_control_init(9)xe_gt_sriov_pf_control_restart(9)
and that's the whole page, babe π massive shoutout to ./drivers/gpu/drm/xe, stamped October 2026, filed under The VF RESUME state machine(9) β go forth and trace your state transitions, ily, mwah ππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms