mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 15:58:05 +02:00
ac: fix incorrect vram_size reported by the kernel
Cc: 19.2 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
(cherry picked from commit 7d97013294)
This commit is contained in:
parent
8f95245068
commit
0a2285b1d4
1 changed files with 10 additions and 2 deletions
|
|
@ -92,6 +92,14 @@ static bool has_syncobj(int fd)
|
|||
return value ? true : false;
|
||||
}
|
||||
|
||||
static uint64_t fix_vram_size(uint64_t size)
|
||||
{
|
||||
/* The VRAM size is underreported, so we need to fix it, because
|
||||
* it's used to compute the number of memory modules for harvesting.
|
||||
*/
|
||||
return align64(size, 256*1024*1024);
|
||||
}
|
||||
|
||||
bool ac_query_gpu_info(int fd, void *dev_p,
|
||||
struct radeon_info *info,
|
||||
struct amdgpu_gpu_info *amdinfo)
|
||||
|
|
@ -265,7 +273,7 @@ bool ac_query_gpu_info(int fd, void *dev_p,
|
|||
|
||||
/* Note: usable_heap_size values can be random and can't be relied on. */
|
||||
info->gart_size = meminfo.gtt.total_heap_size;
|
||||
info->vram_size = meminfo.vram.total_heap_size;
|
||||
info->vram_size = fix_vram_size(meminfo.vram.total_heap_size);
|
||||
info->vram_vis_size = meminfo.cpu_accessible_vram.total_heap_size;
|
||||
} else {
|
||||
/* This is a deprecated interface, which reports usable sizes
|
||||
|
|
@ -296,7 +304,7 @@ bool ac_query_gpu_info(int fd, void *dev_p,
|
|||
}
|
||||
|
||||
info->gart_size = gtt.heap_size;
|
||||
info->vram_size = vram.heap_size;
|
||||
info->vram_size = fix_vram_size(vram.heap_size);
|
||||
info->vram_vis_size = vram_vis.heap_size;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue