[PATCH] drm/amdgpu: Fix no irq process when evict vram

Alex Deucher alexdeucher at gmail.com
Tue Feb 6 17:42:00 UTC 2018


Yintian,

Any plans to commit this?

Alex

On Wed, Dec 13, 2017 at 11:36 AM, Deucher, Alexander
<Alexander.Deucher at amd.com> wrote:
> This seems like a good thing to do in general even with Monk's fix.
>
>
> Acked-by: Alex Deucher <alexander.deucher at amd.com>
>
> ________________________________
> From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> on behalf of Yintian
> Tao <yttao at amd.com>
> Sent: Tuesday, December 12, 2017 10:37:43 PM
> To: amd-gfx at lists.freedesktop.org
> Cc: Tao, Yintian
> Subject: [PATCH] drm/amdgpu: Fix no irq process when evict vram
>
> When unload amdgpu driver we use sdma to evict vram but there is no
> irq process after sdma completed work which raises that waiting for the
> fence costs 2s which will trigger VFLR under SRIOV and at last make
> unload driver failed.The reason is that the shutdown varible in adev
> is set to true before evict vram, it cause ISR directly return without
> processing.Therefore, we need set the varible after evict vram.
>
> Change-Id: I7bf75481aa0744b99c41672b49670adc70b478bd
> Signed-off-by: Yintian Tao <yttao at amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index a269bbc..80934ee 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -2458,7 +2458,6 @@ void amdgpu_device_fini(struct amdgpu_device *adev)
>          int r;
>
>          DRM_INFO("amdgpu: finishing device.\n");
> -       adev->shutdown = true;
>          if (adev->mode_info.mode_config_initialized)
>                  drm_crtc_force_disable_all(adev->ddev);
>
> @@ -2466,6 +2465,7 @@ void amdgpu_device_fini(struct amdgpu_device *adev)
>          amdgpu_fence_driver_fini(adev);
>          amdgpu_fbdev_fini(adev);
>          r = amdgpu_fini(adev);
> +       adev->shutdown = true;
>          if (adev->firmware.gpu_info_fw) {
>                  release_firmware(adev->firmware.gpu_info_fw);
>                  adev->firmware.gpu_info_fw = NULL;
> --
> 2.7.4
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
>


More information about the amd-gfx mailing list