[PATCH v2 2/2] drm/xe: Re-register CCS save/restore contexts post S3/S4 resume
Matthew Brost
matthew.brost at intel.com
Tue Aug 5 03:13:03 UTC 2025
On Fri, Aug 01, 2025 at 06:54:41PM +0530, Satyanarayana K V P wrote:
> After resuming from S3/S4 states, QEMU issues a VF FLR which resets GuC
> communication, causing the loss of registered CCS save/restore contexts
> with GUC.
>
> VM migration post-resume leads to data corruption since the GuC cannot
> save CCS metadata without these contexts.
>
> Re-register the CCS save/restore contexts with the GuC after S3/S4 resume
> to resolve the issue.
>
> Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p at intel.com>
> Cc: Matthew Brost <matthew.brost at intel.com>
> Cc: Michal Wajdeczko <michal.wajdeczko at intel.com>
>
I'd just squash this one into the previous patch as functionality would
be broken without this patch.
Code changes lgtm though.
Matt
> ---
> V1 -> V2:
> - Added commit in V2 version.
> ---
> drivers/gpu/drm/xe/xe_pm.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
> index 44aaf154ddf7..5e8126ca8e27 100644
> --- a/drivers/gpu/drm/xe/xe_pm.c
> +++ b/drivers/gpu/drm/xe/xe_pm.c
> @@ -209,6 +209,9 @@ int xe_pm_resume(struct xe_device *xe)
>
> xe_pxp_pm_resume(xe->pxp);
>
> + if (IS_SRIOV_VF(xe))
> + xe_sriov_vf_ccs_register_context(xe);
> +
> drm_dbg(&xe->drm, "Device resumed\n");
> return 0;
> err:
> --
> 2.43.0
>
More information about the Intel-xe
mailing list