RE: [PATCH] drm/amdgpu: remove evict_resource for sriov when suspend.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[AMD Official Use Only - General]

I agree with Christian . Although on some  hypervisior with  live migration support , there will be  specific API between  OS and  PF driver to handle the FB content save/restore for VF, in this case , guest side save/restore is not necessary.   On other hypervisior without the  live migration(like KVM for now)  , it will depends on the guests driver do the save/restore  itself on suspend/resume call back.

Regards
Shaoyun.liu



-----Original Message-----
From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Christian König
Sent: Monday, December 5, 2022 5:43 AM
To: Fan, Shikang <Shikang.Fan@xxxxxxx>; amd-gfx@xxxxxxxxxxxxxxxxxxxxx
Subject: Re: [PATCH] drm/amdgpu: remove evict_resource for sriov when suspend.

Am 05.12.22 um 09:47 schrieb Shikang Fan:
> - There is no need to evict resources from vram to sram for sriov
>    because GPU is still powered on. And evicet is taking too much time
>    that would cause full access mode timedout in multi-vf mode.

Well big NAK to this!

The suspend is usually done to migrating the virtual machine to a different hw instance. Because of this the content of VRAM is usually destroyed.

Regards,
Christian.

>
> Signed-off-by: Shikang Fan <shikang.fan@xxxxxxx>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 8 +++++---
>   1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 818fa72c670d..55fe425fbe6d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -4135,9 +4135,11 @@ int amdgpu_device_suspend(struct drm_device *dev, bool fbcon)
>       if (!adev->in_s0ix)
>               amdgpu_amdkfd_suspend(adev, adev->in_runpm);
>
> -     r = amdgpu_device_evict_resources(adev);
> -     if (r)
> -             return r;
> +     if (!amdgpu_sriov_vf(adev)) {
> +             r = amdgpu_device_evict_resources(adev);
> +             if (r)
> +                     return r;
> +     }
>
>       amdgpu_fence_driver_hw_fini(adev);
>

<<attachment: winmail.dat>>


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux