Am 2021-08-24 um 11:48 p.m. schrieb Alex Sierra: > Ref counter from device pages is init to zero during memmap init zone. > The first time a new device page is allocated to migrate data into it, > its ref counter needs to be initialized to one. > > Signed-off-by: Alex Sierra <alex.sierra@xxxxxxx> > --- > drivers/gpu/drm/amd/amdkfd/kfd_migrate.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c > index dab290a4d19d..47ee9a895cd2 100644 > --- a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c > @@ -220,7 +220,7 @@ svm_migrate_get_vram_page(struct svm_range *prange, unsigned long pfn) > page = pfn_to_page(pfn); > svm_range_bo_ref(prange->svm_bo); > page->zone_device_data = prange->svm_bo; > - get_page(page); There is an assumption here that the page refcount is 0 because the page should be unused. I'd add a VM_BUG_ON_PAGE(page_ref_count(page), page) here to check that assumption. Regards, Felix > + init_page_count(page); > lock_page(page); > } >