[PATCH] drm/amdgpu: fix amdgpu_vm_fini

zhoucm1 zhoucm1 at amd.com
Fri Oct 19 02:03:58 UTC 2018



On 2018年10月18日 20:31, Christian König wrote:
> We should not remove mappings in rbtree_postorder_for_each_entry_safe
> because that rebalances the tree.
>
> Signed-off-by: Christian König <christian.koenig at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 1 -
>   1 file changed, 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> index 6904d794d60a..01d94de6a6a1 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> @@ -3235,7 +3235,6 @@ void amdgpu_vm_fini(struct amdgpu_device *adev, struct amdgpu_vm *vm)
>   	rbtree_postorder_for_each_entry_safe(mapping, tmp,
>   					     &vm->va.rb_root, rb) {
>   		list_del(&mapping->list);
> -		amdgpu_vm_it_remove(mapping, &vm->va);
>   		kfree(mapping);
At least, we should add some comments here, like rb_root would be 
invalid, we cannot use it any more, although that is fact.
Or as you suggested to me before, we can change to while(next_node)...:)

anyway, depending on your favorite, Reviewed-by: Chunming Zhou 
<david1.zhou at amd.com>
>   	}
>   	list_for_each_entry_safe(mapping, tmp, &vm->freed, list) {



More information about the amd-gfx mailing list