intel_gvt_reset_vgpu_locked(9)
π intel_gvt_reset_vgpu_locked β the kernel API manual, bestie edition π
okay so you're looking at intel_gvt_reset_vgpu_locked, a page from the Kernel API Manual, and honestly? she's a baddie. let's get into it β¨
πΈ NAME πΈ
intel_gvt_reset_vgpu_locked β reset a virtual GPU by DMLR or GT reset. that's the whole vibe. π
β¨ SYNOPSIS β¨
void intel_gvt_reset_vgpu_locked (struct intel_vgpu *vgpu , bool dmlr ,
intel_engine_mask_t engine_mask );
literally that's the whole signature, no cap. copy it exactly, don't be cute with it π«Ά
π¦ ARGUMENTS π¦
vgpuβ the virtual GPU. our main character πdmlrβ vGPU Device Model Level Reset or GT Reset. yeah it's the "which flavour of reset are we doing" switch πengine_maskβ engines to reset for GT reset. it's giving "pick your fighters" π
π₯ DESCRIPTION π₯
so this function is the one that gets called when a user wants to reset a virtual GPU β either through device model reset or through GT reset. and listen, bestie, the caller should hold the vgpu lock. that's not optional, that's the rule, periodt π
π vGPU Device Model Level Reset (DMLR) π
DMLR simulates the PCI level reset, and what it does is reset the whole vGPU back to its default state β the exact state it was in when it was created. brand new, fresh out the box, no baggage β¨
this vGPU function is required both for functionary and security concerns. (yes, both. she's multi-talented.) the ultimate goal of vGPU FLR is that reuse a vGPU instance by virtual machines. so when we assign a vGPU to a virtual machine, we must issue such reset first β like wiping the counter before the next customer, iykyk π
π§ Full GT Reset and Per-Engine GT Reset π§
these are soft reset flow for GPU engines, and the engines in question are: Render, Blitter, Video, Video Enhancement. it is defined by GPU Spec. π
unlike the FLR, GT reset only reset particular resource of a vGPU per the reset request. so she's surgical, not scorched-earth πΈ
guest driver can issue a GT reset by programming the virtual GDRST register to reset specific virtual GPU engine or all engines. one engine? all engines? guest driver's choice, lowkey iconic β
π the params, explained π
the parameter dev_level is to identify if we will do DMLR or GT reset. the parameter engine_mask is to specific the engines that need to be reset.
if value ALL_ENGINES is given for engine_mask, it means the caller requests a full GT reset that we will reset all virtual GPU engines. every single one. all of them. go off π₯
and for FLR? engine_mask is ignored. don't even worry about it, she's not listening π
π SEE ALSO π
kernel file ./drivers/gpu/drm/i915/gvt/vgpu.c β that's where she lives, go say hi π
and the whole friend group, fr fr:
intel_gvt_init_vgpu_types(9)intel_gvt_activate_vgpu(9)intel_gvt_deactivate_vgpu(9)intel_gvt_release_vgpu(9)intel_gvt_destroy_vgpu(9)intel_gvt_create_idle_vgpu(9)intel_gvt_destroy_idle_vgpu(9)intel_gvt_reset_vgpu(9)
and that's the page, bestie π«Ά from./drivers/gpu/drm/i915/gvt, dated October 2026, and she goes byintel_gvt_reset_vgpu_locked(9). 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