Subject: Re: [PATCH 1/1] drm/amdgpu: adopt to hmm_range_register API change

From: "Kuehling, Felix" <[email-masked]>
Date: Mon, 8 Jul 2019 15:26:22 +0000

On 2019-07-07 7:30 p.m., Stephen Rothwell wrote:
> Hi all,
>
> On Wed, 3 Jul 2019 17:09:16 -0400 Alex Deucher <[email-masked]> wrote:
>> On Wed, Jul 3, 2019 at 5:03 PM Kuehling, Felix <[email-masked]> wrote:
>>> On 2019-07-03 10:10 a.m., Jason Gunthorpe wrote:
>>>> On Wed, Jul 03, 2019 at 01:55:08AM +0000, Kuehling, Felix wrote:
>>>>> From: Philip Yang <[email-masked]>
>>>>>
>>>>> In order to pass mirror instead of mm to hmm_range_register, we need
>>>>> pass bo instead of ttm to amdgpu_ttm_tt_get_user_pages because mirror
>>>>> is part of amdgpu_mn structure, which is accessible from bo.
>>>>>
>>>>> Signed-off-by: Philip Yang <[email-masked]>
>>>>> Reviewed-by: Felix Kuehling <[email-masked]>
>>>>> Signed-off-by: Felix Kuehling <[email-masked]>
>>>>> CC: Stephen Rothwell <[email-masked]>
>>>>> CC: Jason Gunthorpe <[email-masked]>
>>>>> CC: Dave Airlie <[email-masked]>
>>>>> CC: Alex Deucher <[email-masked]>
>>>>> ---
>>>>>    drivers/gpu/drm/Kconfig                          |  1 -
>>>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c |  5 ++---
>>>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c           |  2 +-
>>>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c          |  3 +--
>>>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c           |  8 ++++++++
>>>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_mn.h           |  5 +++++
>>>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c          | 12 ++++++++++--
>>>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h          |  5 +++--
>>>>>    8 files changed, 30 insertions(+), 11 deletions(-)
>>>> This is too big to use as a conflict resolution, what you could do is
>>>> apply the majority of the patch on top of your tree as-is (ie keep
>>>> using the old hmm_range_register), then the conflict resolution for
>>>> the updated AMD GPU tree can be a simple one line change:
>>>>
>>>>    -   hmm_range_register(range, mm, start,
>>>>    +   hmm_range_register(range, mirror, start,
>>>>                           start + ttm->num_pages * PAGE_SIZE, PAGE_SHIFT);
>>>>
>>>> Which is trivial for everone to deal with, and solves the problem.
>>> Good idea.
> With the changes added to the amdgpu tree over the weekend, I will
> apply the following merge fix patch to the hmm merge today:
>
> From: Philip Yang <[email-masked]>
> Sibject: drm/amdgpu: adopt to hmm_range_register API change
>
> Signed-off-by: Stephen Rothwell <[email-masked]>
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> @@ -783,7 +783,7 @@ int amdgpu_ttm_tt_get_user_pages(struct ttm_tt *ttm, struct page **pages)
>   				0 : range->flags[HMM_PFN_WRITE];
>   	range->pfn_flags_mask = 0;
>   	range->pfns = pfns;
> -	hmm_range_register(range, mm, start,
> +	hmm_range_register(range, mirror, start,
>   			   start + ttm->num_pages * PAGE_SIZE, PAGE_SHIFT);
>   
>   retry:
>
> And someone just needs to make sure Linus is aware of this needed merge fix.

Thank you! Who will be that someone? It should probably be one of the 
maintainers of the trees Linux pulls from ...

Regards,
   Felix