[PATCH 1/2] drm/amdgpu: wire up a pci shutdown callback

Christian König deathsimple at vodafone.de
Tue Aug 23 08:07:31 UTC 2016


Am 22.08.2016 um 20:30 schrieb Alex Deucher:
> Normally on shutdown or reboot we don't care about necessarily
> making sure the hw is in a good state because the system is about
> to be powered down or reset.  However, after a shutdown or reboot
> in a VM, it's best to tear down the hw properly otherwise there
> can be problems with the next VM use.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>

Both patches are Reviewed-by: Christian König <christian.koenig at amd.com>

Regards,
Christian.

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 14 ++++++++++++++
>   1 file changed, 14 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> index 5c7a77b..0da4336 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> @@ -392,6 +392,19 @@ amdgpu_pci_remove(struct pci_dev *pdev)
>   	drm_put_dev(dev);
>   }
>   
> +static void
> +amdgpu_pci_shutdown(struct pci_dev *pdev)
> +{
> +	struct drm_device *dev = pci_get_drvdata(pdev);
> +	struct amdgpu_device *adev = dev->dev_private;
> +
> +	/* if we are running in a VM, make sure the device
> +	 * torn down properly on reboot/shutdown
> +	 */
> +	if (adev->virtualization.is_virtual)
> +		amdgpu_pci_remove(pdev);
> +}
> +
>   static int amdgpu_pmops_suspend(struct device *dev)
>   {
>   	struct pci_dev *pdev = to_pci_dev(dev);
> @@ -605,6 +618,7 @@ static struct pci_driver amdgpu_kms_pci_driver = {
>   	.id_table = pciidlist,
>   	.probe = amdgpu_pci_probe,
>   	.remove = amdgpu_pci_remove,
> +	.shutdown = amdgpu_pci_shutdown,
>   	.driver.pm = &amdgpu_pm_ops,
>   };
>   




More information about the amd-gfx mailing list