[PATCH 1/1] drm/amdkfd: Handle drain retry fault race with XNACK mode change
Felix Kuehling
felix.kuehling at amd.com
Fri Apr 8 02:51:42 UTC 2022
Am 2022-04-07 um 21:21 schrieb Philip Yang:
> Application could change XNACK enabled to disabled while KFD is draining
> stall retry fault, the check for whether to drain retry faults must be
typo: stall -> stale
I think there is also a word missing, linking the two sentences. Maybe
"... stale retry faults, therefore the check ..." With that fixed, the
patch is
Reviewed-by: Felix Kuehling <Felix.Kuehling at amd.com>
> before the check for whether xnack_enabled, to avoid report incorrect vm
> fault after application changes XNACK mode.
>
> Signed-off-by: Philip Yang <Philip.Yang at amd.com>
> ---
> drivers/gpu/drm/amd/amdkfd/kfd_svm.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_svm.c b/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
> index d011d620dfe7..c76d29a22e9d 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
> @@ -2700,11 +2700,6 @@ svm_range_restore_pages(struct amdgpu_device *adev, unsigned int pasid,
> pr_debug("kfd process not founded pasid 0x%x\n", pasid);
> return 0;
> }
> - if (!p->xnack_enabled) {
> - pr_debug("XNACK not enabled for pasid 0x%x\n", pasid);
> - r = -EFAULT;
> - goto out;
> - }
> svms = &p->svms;
>
> pr_debug("restoring svms 0x%p fault address 0x%llx\n", svms, addr);
> @@ -2715,6 +2710,12 @@ svm_range_restore_pages(struct amdgpu_device *adev, unsigned int pasid,
> goto out;
> }
>
> + if (!p->xnack_enabled) {
> + pr_debug("XNACK not enabled for pasid 0x%x\n", pasid);
> + r = -EFAULT;
> + goto out;
> + }
> +
> /* p->lead_thread is available as kfd_process_wq_release flush the work
> * before releasing task ref.
> */
More information about the amd-gfx
mailing list