[Mesa-dev] [PATCH 3/3] winsys/radeon: clamp vram_vis_size to 256MB
Nicolai Hähnle
nhaehnle at gmail.com
Mon Jan 30 14:20:52 UTC 2017
For the series:
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
On 30.01.2017 01:33, Marek Olšák wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> the value from the kernel is wrong
> ---
> src/gallium/winsys/radeon/drm/radeon_drm_winsys.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
> index 278d4f3..a8da62f 100644
> --- a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
> +++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
> @@ -365,21 +365,21 @@ static bool do_winsys_init(struct radeon_drm_winsys *ws)
> /* Get GEM info. */
> retval = drmCommandWriteRead(ws->fd, DRM_RADEON_GEM_INFO,
> &gem_info, sizeof(gem_info));
> if (retval) {
> fprintf(stderr, "radeon: Failed to get MM info, error number %d\n",
> retval);
> return false;
> }
> ws->info.gart_size = gem_info.gart_size;
> ws->info.vram_size = gem_info.vram_size;
> - ws->info.vram_vis_size = gem_info.vram_visible;
> + ws->info.vram_vis_size = MIN2(gem_info.vram_visible, 256*1024*1024);
>
> /* Radeon allocates all buffers as contigous, which makes large allocations
> * unlikely to succeed. */
> ws->info.max_alloc_size = MAX2(ws->info.vram_size, ws->info.gart_size) * 0.7;
> if (ws->info.drm_minor < 40)
> ws->info.max_alloc_size = MIN2(ws->info.max_alloc_size, 256*1024*1024);
>
> /* Get max clock frequency info and convert it to MHz */
> radeon_get_drm_value(ws->fd, RADEON_INFO_MAX_SCLK, NULL,
> &ws->info.max_shader_clock);
>
More information about the mesa-dev
mailing list