[AMD Official Use Only - General] > -----Original Message----- > From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Philip > Yang > Sent: Tuesday, June 6, 2023 3:57 PM > To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx > Cc: Yang, Philip <Philip.Yang@xxxxxxx>; Kuehling, Felix > <Felix.Kuehling@xxxxxxx> > Subject: [PATCH] drm/amdgpu: Increase hmm range get pages timeout > > If hmm_range_fault returns -EBUSY, we should call hmm_range_fault again > to validate the remaining pages. On one system with NUMA auto balancing > enabled, hmm_range_fault takes 6 seconds for 1GB range because CPU > migrate the range one page at a time. To be safe, increase timeout value > to 1 second for 128MB range. > > Signed-off-by: Philip Yang <Philip.Yang@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_hmm.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_hmm.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_hmm.c > index 2dadcfe43d03..f7efa582f3ed 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_hmm.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_hmm.c > @@ -190,8 +190,8 @@ int amdgpu_hmm_range_get_pages(struct > mmu_interval_notifier *notifier, > pr_debug("hmm range: start = 0x%lx, end = 0x%lx", > hmm_range->start, hmm_range->end); > > - /* Assuming 512MB takes maxmium 1 second to fault page > address */ > - timeout = max((hmm_range->end - hmm_range->start) >> 29, > 1UL); > + /* Assuming 128MB takes maxmium 1 second to fault page > address */ Since we're changing the line anyways, can we fix maxmium->maximum ? Kent > + timeout = max((hmm_range->end - hmm_range->start) >> 27, > 1UL); > timeout *= HMM_RANGE_DEFAULT_TIMEOUT; > timeout = jiffies + msecs_to_jiffies(timeout); > > -- > 2.35.1