Re: [PATCH 3/4] drm/amdgpu: Add kfd init_complete flag to check from amdgpu side

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

 



On Thu, Feb 18, 2021 at 8:19 PM shaoyunl <shaoyun.liu@xxxxxxx> wrote:
>
> amdgpu driver may in reset state duirng init which will not initialize the kfd,

grammer "may be in"
typo duirng -> during

> driver need to initialize the KFD after reset by check the flag
>
> Signed-off-by: shaoyunl <shaoyun.liu@xxxxxxx>
> Change-Id: Ic1684b55b27e0afd42bee8b9b431c4fb0afcec15
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 3 ++-
>  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 1 +
>  drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 7 +++++++
>  3 files changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
> index c5343a5eecbe..a876dc3af017 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
> @@ -165,7 +165,8 @@ void amdgpu_amdkfd_device_init(struct amdgpu_device *adev)
>                                         adev->doorbell_index.last_non_cp;
>                 }
>
> -               kgd2kfd_device_init(adev->kfd.dev, adev_to_drm(adev), &gpu_resources);
> +               adev->kfd.init_complete = kgd2kfd_device_init(adev->kfd.dev,
> +                                               adev_to_drm(adev), &gpu_resources);
>         }
>  }
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h
> index 4687ff2961e1..3182dd97840e 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h
> @@ -80,6 +80,7 @@ struct amdgpu_amdkfd_fence {
>  struct amdgpu_kfd_dev {
>         struct kfd_dev *dev;
>         uint64_t vram_used;
> +       bool init_complete;
>  };
>
>  enum kgd_engine_type {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 9f574fd151bc..e898fce96f75 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -4841,6 +4841,13 @@ int amdgpu_device_gpu_recover(struct amdgpu_device *adev,
>                 /*unlock kfd: SRIOV would do it separately */
>                 if (!need_emergency_restart && !amdgpu_sriov_vf(tmp_adev))
>                         amdgpu_amdkfd_post_reset(tmp_adev);
> +
> +               /*kfd_post_reset will do nothing if kfd device is not initialized,
> +                *need to bring up kfd here if it's not be initialized before
> +                */

Fix up the comment here.  Need a space between * and the comment.
E.g., /* kfd_post_reset ...

Also, I think this patch also needs to come before patch 1.

With those comments addressed:
Acked-by: Alex Deucher <alexander.deucher@xxxxxxx>

> +               if (!adev->kfd.init_complete)
> +                       amdgpu_amdkfd_device_init(adev);
> +
>                 if (audio_suspended)
>                         amdgpu_device_resume_display_audio(tmp_adev);
>                 amdgpu_device_unlock_adev(tmp_adev);
> --
> 2.17.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx



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

  Powered by Linux