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(¶ms, 0, sizeof(params)); > params.adev = adev; > params.vm = vm; > - params.immediate = immediate; > > r = vm->update_funcs->prepare(¶ms, 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);
