Subject: Re: linux-next: manual merge of the amdgpu tree with the drm-misc tree

From: Stephen Rothwell <[email-masked]>
Date: Wed, 13 Apr 2022 10:10:14 +1000

Hi all,

On Wed, 6 Apr 2022 10:34:05 +1000 Stephen Rothwell <[email-masked]> wrote:
>
> Today's linux-next merge of the amdgpu tree got a conflict in:
> 
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> 
> between commit:
> 
>   fee2ede15542 ("drm/ttm: rework bulk move handling v5")
> 
> from the drm-misc tree and commit:
> 
>   184a69ca4d41 ("drm/amdgpu: separate VM PT handling into amdgpu_vm_pt.c")
> 
> from the amdgpu tree.
> 
> I fixed it up (I used this file from the latter and added the following
> patch) and can carry the fix as necessary. This is now fixed as far as
> linux-next is concerned, but any non trivial conflicts should be mentioned
> to your upstream maintainer when your tree is submitted for merging.
> You may also want to consider cooperating with the maintainer of the
> conflicting tree to minimise any particularly complex conflicts.
> 
> From: Stephen Rothwell <[email-masked]>
> Date: Wed, 6 Apr 2022 10:28:53 +1000
> Subject: [PATCH] fix up for "drm/ttm: rework bulk move handling v5"
> 
> Signed-off-by: Stephen Rothwell <[email-masked]>
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c
> index 958d7ed97882..a29933fa001f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c
> @@ -630,7 +630,14 @@ static void amdgpu_vm_pt_free(struct amdgpu_vm_bo_base *entry)
>  
>  	if (!entry->bo)
>  		return;
> +
>  	shadow = amdgpu_bo_shadowed(entry->bo);
> +	if (shadow) {
> +		ttm_bo_set_bulk_move(&shadow->tbo, NULL);
> +		amdgpu_bo_unref(&shadow);
> +	}
> +
> +	ttm_bo_set_bulk_move(&entry->bo->tbo, NULL);
>  	entry->bo->vm_bo = NULL;
>  	list_del(&entry->vm_status);
>  	amdgpu_bo_unref(&shadow);
> @@ -653,8 +660,6 @@ static void amdgpu_vm_pt_free_dfs(struct amdgpu_device *adev,
>  	struct amdgpu_vm_pt_cursor cursor;
>  	struct amdgpu_vm_bo_base *entry;
>  
> -	vm->bulk_moveable = false;
> -
>  	for_each_amdgpu_vm_pt_dfs_safe(adev, vm, start, cursor, entry)
>  		amdgpu_vm_pt_free(entry);
>  
> -- 
> 2.35.1

This is now a conflict between the drm tree and the amdgpu tree.

-- 
Cheers,
Stephen Rothwell