[Mesa-dev] [PATCH 3/3] softpipe: Cap to 2 GB on 32 bits

Roland Scheidegger sroland at vmware.com
Thu Oct 6 18:01:32 UTC 2016


Am 06.10.2016 um 19:51 schrieb Axel Davy:
> On 32 bits system, application memory is quite limited.
> softpipe uses application memory. To help prevent memory
> exhaustion, limit reported memory availability to 2GB.
> 
> Some gallium nine apps do check reported memory by allocating
> resources until memory is full. Gallium nine refuses allocations
> when 80% of the reported memory limit is used. This change
> helps some apps to start.
> 
> Signed-off-by: Axel Davy <axel.davy at ens.fr>
> ---
>  src/gallium/drivers/softpipe/sp_screen.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/src/gallium/drivers/softpipe/sp_screen.c b/src/gallium/drivers/softpipe/sp_screen.c
> index cd4269f..b2c3c7a 100644
> --- a/src/gallium/drivers/softpipe/sp_screen.c
> +++ b/src/gallium/drivers/softpipe/sp_screen.c
> @@ -230,6 +230,12 @@ softpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
>        if (!os_get_total_physical_memory(&system_memory))
>           return 0;
>  
> +      if (sizeof(void *) == 4)
> +         /* Cap to 2 GB on 32 bits system. We do this because softpipe does
> +          * eat application memory, which is quite limited on 32 bits. App
> +          * shouldn't expect too much available memory. */
> +         system_memory = MIN2(system_memory, 2048 << 20);
> +
>        return (int)(system_memory >> 20);
>     }
>     case PIPE_CAP_UMA:
> 

For 1-3/3 (and the new 2/75 for the aliasing issue)
Reviewed-by: Roland Scheidegger <sroland at vmware.com>




More information about the mesa-dev mailing list