On 2026. szeptember 28., hétfő 11:10:38 keleti államokbeli nyári idő Christian 
König wrote:
> That case is handled by amdgpu_vm_update_leaves now.
> 
> Signed-off-by: Christian König <[email protected]>

Reviewed-by: Timur Kristóf <[email protected]>

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c |  2 +-
>  drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c           |  2 +-
>  drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c          |  2 +-
>  drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c       | 12 ++++++------
>  drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c        |  2 +-
>  drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c           |  5 +----
>  drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h           |  3 +--
>  drivers/gpu/drm/amd/amdkfd/kfd_svm.c             |  2 +-
>  8 files changed, 13 insertions(+), 17 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c index
> a5d1d83ee5d32..cb46111b2dc8c 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> @@ -503,7 +503,7 @@ static int vm_update_pds(struct amdgpu_vm *vm, struct
> amdgpu_sync *sync) struct amdgpu_device *adev =
> amdgpu_ttm_adev(pd->tbo.bdev);
>       int ret;
> 
> -     ret = amdgpu_vm_update_pdes(adev, vm, false);
> +     ret = amdgpu_vm_update_pdes(adev, vm);
>       if (ret)
>               return ret;
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index e7a9c2de46131..eef3acfdb7c73
> 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> @@ -1182,7 +1182,7 @@ static int amdgpu_cs_vm_handling(struct
> amdgpu_cs_parser *p) if (r)
>               return r;
> 
> -     r = amdgpu_vm_update_pdes(adev, vm, false);
> +     r = amdgpu_vm_update_pdes(adev, vm);
>       if (r)
>               return r;
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c index
> 4e4814caf61a9..86a1239e49149 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> @@ -811,7 +811,7 @@ amdgpu_gem_va_update_vm(struct amdgpu_device *adev,
>       }
> 
>       /* Always update PDEs after we touched the mappings. */
> -     r = amdgpu_vm_update_pdes(adev, vm, false);
> +     r = amdgpu_vm_update_pdes(adev, vm);
>       if (r)
>               goto error;
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c index
> aac97dca36e33..899153716b7ef 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c
> @@ -2065,7 +2065,7 @@ static int amdgpu_ualink_unmap_npa_addr(struct
> amdgpu_device *adev, goto out;
>       }
> 
> -     r = amdgpu_vm_update_pdes(adev, vm, false);
> +     r = amdgpu_vm_update_pdes(adev, vm);
>       if (r) {
>               dev_err(adev->dev,
>                       "Failed %d to update page directories during 
unmapping NPA: 0x%llx\n",
> @@ -2119,7 +2119,7 @@ static int amdgpu_ualink_map_npa_addr(struct
> amdgpu_device *adev, u64 npa_addr, goto out;
>       }
> 
> -     r = amdgpu_vm_update_pdes(adev, vm, false);
> +     r = amdgpu_vm_update_pdes(adev, vm);
>       if (r) {
>               dev_err(adev->dev,
>                       "failed %d to update page directories for 
NPA: 0x%llx\n",
> @@ -2661,7 +2661,7 @@ static void amdgpu_ualink_force_retry_rpcs(struct
> amdgpu_device *adev, break;
>       }
> 
> -     r = amdgpu_vm_update_pdes(adev, vm, false);
> +     r = amdgpu_vm_update_pdes(adev, vm);
>       if (r) {
>               dev_err(adev->dev,
>                       "Failed %d to update page directories during 
force retry rpcs\n",
> @@ -2798,7 +2798,7 @@ static void amdgpu_ualink_unmap_all_npa_addr(struct
> amdgpu_device *adev, break;
>       }
> 
> -     r = amdgpu_vm_update_pdes(adev, vm, false);
> +     r = amdgpu_vm_update_pdes(adev, vm);
>       if (r) {
>               dev_err(adev->dev,
>                       "Failed %d to update page directories during 
all NPA addresses
> unmapping\n", @@ -4873,7 +4873,7 @@ static void
> amdgpu_ualink_metadata_npa_unmapping(struct amdgpu_device *adev) }
>       }
> 
> -     r = amdgpu_vm_update_pdes(adev, &adev->ualink.npa_vm, false);
> +     r = amdgpu_vm_update_pdes(adev, &adev->ualink.npa_vm);
>       if (r) {
>               dev_dbg(adev->dev, "failed %d to update directories\n", 
r);
>               goto out_unreserve;
> @@ -5016,7 +5016,7 @@ static int amdgpu_ualink_metadata_npa_mapping(struct
> amdgpu_device *adev) }
>       }
> 
> -     r = amdgpu_vm_update_pdes(adev, &adev->ualink.npa_vm, false);
> +     r = amdgpu_vm_update_pdes(adev, &adev->ualink.npa_vm);
>       if (r) {
>               dev_dbg(adev->dev, "failed %d to update directories\n", 
r);
>               goto error_npa_mapping;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c index
> 75d5ceaa53c65..cf427037a8303 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
> @@ -1173,7 +1173,7 @@ amdgpu_userq_vm_validate_and_restore_queue(struct
> amdgpu_userq_mgr *uq_mgr) goto retry_lock;
>       }
> 
> -     ret = amdgpu_vm_update_pdes(adev, vm, false);
> +     ret = amdgpu_vm_update_pdes(adev, vm);
>       if (ret)
>               goto unlock_all;
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c index 017ec0ac0870d..cc6c419ff6fa2
> 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> @@ -985,15 +985,13 @@ uint64_t amdgpu_vm_map_gart(const dma_addr_t
> *pages_addr, uint64_t addr) *
>   * @adev: amdgpu_device pointer
>   * @vm: requested vm
> - * @immediate: submit immediately to the paging queue
>   *
>   * Makes sure all directories are up to date.
>   *
>   * Returns:
>   * 0 for success, error for failure.
>   */
> -int amdgpu_vm_update_pdes(struct amdgpu_device *adev,
> -                       struct amdgpu_vm *vm, bool immediate)
> +int amdgpu_vm_update_pdes(struct amdgpu_device *adev, struct amdgpu_vm *vm)
> {
>       struct amdgpu_vm_update_params params;
>       struct amdgpu_vm_bo_base *entry, *tmp;
> @@ -1011,7 +1009,6 @@ int amdgpu_vm_update_pdes(struct amdgpu_device *adev,
>       memset(&params, 0, sizeof(params));
>       params.adev = adev;
>       params.vm = vm;
> -     params.immediate = immediate;
> 
>       r = vm->update_funcs->prepare(&params, NULL,
>                                     
AMDGPU_KERNEL_JOB_ID_VM_UPDATE_PDES);
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h index 3ff17625a8c0c..a3556cf6dd525
> 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h
> @@ -451,8 +451,7 @@ int amdgpu_vm_validate(struct amdgpu_device *adev,
> struct amdgpu_vm *vm, void amdgpu_vm_flush(struct amdgpu_ring *ring, struct
> amdgpu_job *job, bool *need_pipe_sync, bool *emit_spm_needed,
>                    bool *emit_gds_needed);
> -int amdgpu_vm_update_pdes(struct amdgpu_device *adev,
> -                       struct amdgpu_vm *vm, bool immediate);
> +int amdgpu_vm_update_pdes(struct amdgpu_device *adev, struct amdgpu_vm
> *vm); int amdgpu_vm_clear_freed(struct amdgpu_device *adev,
>                         struct amdgpu_vm *vm,
>                         struct dma_fence **fence);
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
> b/drivers/gpu/drm/amd/amdkfd/kfd_svm.c index 411bd3394442a..af8d2ede183a1
> 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_svm.c
> @@ -1540,7 +1540,7 @@ svm_range_map_to_gpu(struct kfd_process_device *pdd,
> struct svm_range *prange, last_start = prange->start + i + 1;
>       }
> 
> -     r = amdgpu_vm_update_pdes(adev, vm, false);
> +     r = amdgpu_vm_update_pdes(adev, vm);
>       if (r) {
>               pr_debug("failed %d to update directories 0x%lx\n", r,
>                        prange->start);




Reply via email to