[AMD Official Use Only - General]

Hi Shaoyun and Christian,

Thank you for your comments! We indeed did not consider the live migration case 
when we tried to fix this and we shall come up with other methods for our issue.

Best regards,
Shikang. 

-----Original Message-----
From: Liu, Shaoyun <shaoyun....@amd.com> 
Sent: Tuesday, December 6, 2022 4:26 AM
To: Koenig, Christian <christian.koe...@amd.com>; Fan, Shikang 
<shikang....@amd.com>; amd-gfx@lists.freedesktop.org
Subject: RE: [PATCH] drm/amdgpu: remove evict_resource for sriov when suspend.

[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-boun...@lists.freedesktop.org> On Behalf Of Christian 
König
Sent: Monday, December 5, 2022 5:43 AM
To: Fan, Shikang <shikang....@amd.com>; amd-gfx@lists.freedesktop.org
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....@amd.com>
> ---
>   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>>

Reply via email to