[PATCH] drm/amdgpu: skip amdgpu_device_cache_pci_state under sriov

Lazar, Lijo lijo.lazar at amd.com
Mon Oct 28 12:11:57 UTC 2024



On 10/28/2024 9:34 AM, Victor Zhao wrote:
> Under sriov, host driver will save and restore vf pci cfg space during
> reset. And during device init, under sriov, pci_restore_state happens after
> fullaccess released, and it can have race condition with mmio protection
> enable from host side leading to missing interrupts.
> 
> So skip amdgpu_device_cache_pci_state for sriov.
> 
> Signed-off-by: Victor Zhao <Victor.Zhao at amd.com>

Acked-by: Lijo Lazar <lijo.lazar at amd.com>

Thanks,
Lijo

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 383bbee87df5..64622dc57a6b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -6451,6 +6451,9 @@ bool amdgpu_device_cache_pci_state(struct pci_dev *pdev)
>  	struct amdgpu_device *adev = drm_to_adev(dev);
>  	int r;
>  
> +	if (amdgpu_sriov_vf(adev))
> +		return false;
> +
>  	r = pci_save_state(pdev);
>  	if (!r) {
>  		kfree(adev->pci_state);


More information about the amd-gfx mailing list