drm/ttm: make num_pages uint32_t
We can still allocate 16TiB with that. Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Link: https://patchwork.freedesktop.org/patch/396946/
This commit is contained in:
Родитель
05f8d25097
Коммит
230c079fdc
|
@ -973,7 +973,7 @@ bool amdgpu_ttm_tt_get_user_pages_done(struct ttm_tt *ttm)
|
||||||
if (!gtt || !gtt->userptr)
|
if (!gtt || !gtt->userptr)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
DRM_DEBUG_DRIVER("user_pages_done 0x%llx pages 0x%lx\n",
|
DRM_DEBUG_DRIVER("user_pages_done 0x%llx pages 0x%x\n",
|
||||||
gtt->userptr, ttm->num_pages);
|
gtt->userptr, ttm->num_pages);
|
||||||
|
|
||||||
WARN_ONCE(!gtt->range || !gtt->range->hmm_pfns,
|
WARN_ONCE(!gtt->range || !gtt->range->hmm_pfns,
|
||||||
|
@ -1124,7 +1124,7 @@ static int amdgpu_ttm_gart_bind(struct amdgpu_device *adev,
|
||||||
|
|
||||||
gart_bind_fail:
|
gart_bind_fail:
|
||||||
if (r)
|
if (r)
|
||||||
DRM_ERROR("failed to bind %lu pages at 0x%08llX\n",
|
DRM_ERROR("failed to bind %u pages at 0x%08llX\n",
|
||||||
ttm->num_pages, gtt->offset);
|
ttm->num_pages, gtt->offset);
|
||||||
|
|
||||||
return r;
|
return r;
|
||||||
|
@ -1159,7 +1159,7 @@ static int amdgpu_ttm_backend_bind(struct ttm_bo_device *bdev,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!ttm->num_pages) {
|
if (!ttm->num_pages) {
|
||||||
WARN(1, "nothing to bind %lu pages for mreg %p back %p!\n",
|
WARN(1, "nothing to bind %u pages for mreg %p back %p!\n",
|
||||||
ttm->num_pages, bo_mem, ttm);
|
ttm->num_pages, bo_mem, ttm);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1182,7 +1182,7 @@ static int amdgpu_ttm_backend_bind(struct ttm_bo_device *bdev,
|
||||||
ttm->pages, gtt->ttm.dma_address, flags);
|
ttm->pages, gtt->ttm.dma_address, flags);
|
||||||
|
|
||||||
if (r)
|
if (r)
|
||||||
DRM_ERROR("failed to bind %lu pages at 0x%08llX\n",
|
DRM_ERROR("failed to bind %u pages at 0x%08llX\n",
|
||||||
ttm->num_pages, gtt->offset);
|
ttm->num_pages, gtt->offset);
|
||||||
gtt->bound = true;
|
gtt->bound = true;
|
||||||
return r;
|
return r;
|
||||||
|
@ -1291,7 +1291,7 @@ static void amdgpu_ttm_backend_unbind(struct ttm_bo_device *bdev,
|
||||||
/* unbind shouldn't be done for GDS/GWS/OA in ttm_bo_clean_mm */
|
/* unbind shouldn't be done for GDS/GWS/OA in ttm_bo_clean_mm */
|
||||||
r = amdgpu_gart_unbind(adev, gtt->offset, ttm->num_pages);
|
r = amdgpu_gart_unbind(adev, gtt->offset, ttm->num_pages);
|
||||||
if (r)
|
if (r)
|
||||||
DRM_ERROR("failed to unbind %lu pages at 0x%08llX\n",
|
DRM_ERROR("failed to unbind %u pages at 0x%08llX\n",
|
||||||
gtt->ttm.ttm.num_pages, gtt->offset);
|
gtt->ttm.ttm.num_pages, gtt->offset);
|
||||||
gtt->bound = false;
|
gtt->bound = false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -108,7 +108,7 @@ nv04_gart_manager_new(struct ttm_resource_manager *man,
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
ret = nvif_vmm_get(&mem->cli->vmm.vmm, PTES, false, 12, 0,
|
ret = nvif_vmm_get(&mem->cli->vmm.vmm, PTES, false, 12, 0,
|
||||||
reg->num_pages << PAGE_SHIFT, &mem->vma[0]);
|
(long)reg->num_pages << PAGE_SHIFT, &mem->vma[0]);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
nouveau_mem_del(reg);
|
nouveau_mem_del(reg);
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
@ -564,7 +564,7 @@ static int radeon_ttm_backend_bind(struct ttm_bo_device *bdev,
|
||||||
|
|
||||||
gtt->offset = (unsigned long)(bo_mem->start << PAGE_SHIFT);
|
gtt->offset = (unsigned long)(bo_mem->start << PAGE_SHIFT);
|
||||||
if (!ttm->num_pages) {
|
if (!ttm->num_pages) {
|
||||||
WARN(1, "nothing to bind %lu pages for mreg %p back %p!\n",
|
WARN(1, "nothing to bind %u pages for mreg %p back %p!\n",
|
||||||
ttm->num_pages, bo_mem, ttm);
|
ttm->num_pages, bo_mem, ttm);
|
||||||
}
|
}
|
||||||
if (ttm->caching == ttm_cached)
|
if (ttm->caching == ttm_cached)
|
||||||
|
@ -572,7 +572,7 @@ static int radeon_ttm_backend_bind(struct ttm_bo_device *bdev,
|
||||||
r = radeon_gart_bind(rdev, gtt->offset, ttm->num_pages,
|
r = radeon_gart_bind(rdev, gtt->offset, ttm->num_pages,
|
||||||
ttm->pages, gtt->ttm.dma_address, flags);
|
ttm->pages, gtt->ttm.dma_address, flags);
|
||||||
if (r) {
|
if (r) {
|
||||||
DRM_ERROR("failed to bind %lu pages at 0x%08X\n",
|
DRM_ERROR("failed to bind %u pages at 0x%08X\n",
|
||||||
ttm->num_pages, (unsigned)gtt->offset);
|
ttm->num_pages, (unsigned)gtt->offset);
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,7 @@ struct ttm_operation_ctx;
|
||||||
struct ttm_tt {
|
struct ttm_tt {
|
||||||
struct page **pages;
|
struct page **pages;
|
||||||
uint32_t page_flags;
|
uint32_t page_flags;
|
||||||
unsigned long num_pages;
|
uint32_t num_pages;
|
||||||
struct sg_table *sg; /* for SG objects via dma-buf */
|
struct sg_table *sg; /* for SG objects via dma-buf */
|
||||||
struct file *swap_storage;
|
struct file *swap_storage;
|
||||||
enum ttm_caching caching;
|
enum ttm_caching caching;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче