[Mesa-dev] [RFC 2/3] u_vbuf: add logic to use a limited number of vbufs
Christian Gmeiner
christian.gmeiner at gmail.com
Tue Jun 14 10:14:50 UTC 2016
Hi Marek,
2016-06-13 14:48 GMT+02:00 Marek Olšák <maraeo at gmail.com>:
> On Sat, Jun 11, 2016 at 9:21 PM, Christian Gmeiner
> <christian.gmeiner at gmail.com> wrote:
>> From: "Wladimir J. van der Laan" <laanwj at gmail.com>
>>
>> Make it possible to limit the number of vertex buffers as there exist
>> GPUs with less then 32 supported vertex buffers.
>>
>> Signed-off-by: Wladimir J. van der Laan <laanwj at gmail.com>
>> ---
>> src/gallium/auxiliary/util/u_vbuf.c | 45 +++++++++++++++++++++++++++++++------
>> src/gallium/auxiliary/util/u_vbuf.h | 3 +++
>> 2 files changed, 41 insertions(+), 7 deletions(-)
>>
>> diff --git a/src/gallium/auxiliary/util/u_vbuf.c b/src/gallium/auxiliary/util/u_vbuf.c
>> index 5b4e527..464c279 100644
>> --- a/src/gallium/auxiliary/util/u_vbuf.c
>> +++ b/src/gallium/auxiliary/util/u_vbuf.c
>> @@ -184,6 +184,8 @@ struct u_vbuf {
>> uint32_t incompatible_vb_mask; /* each bit describes a corresp. buffer */
>> /* Which buffer has a non-zero stride. */
>> uint32_t nonzero_stride_vb_mask; /* each bit describes a corresp. buffer */
>> + /* Which buffers are allowed (supported by hardware). */
>> + uint32_t allowed_vb_mask;
>> };
>>
>> static void *
>> @@ -291,10 +293,14 @@ boolean u_vbuf_get_caps(struct pipe_screen *screen, struct u_vbuf_caps *caps)
>> caps->user_vertex_buffers =
>> screen->get_param(screen, PIPE_CAP_USER_VERTEX_BUFFERS);
>>
>> + caps->max_vertex_buffers =
>> + screen->get_param(screen, PIPE_CAP_MAX_VERTEX_BUFFERS);
>> +
>> if (!caps->buffer_offset_unaligned ||
>> !caps->buffer_stride_unaligned ||
>> !caps->velem_src_offset_unaligned ||
>> - !caps->user_vertex_buffers) {
>> + !caps->user_vertex_buffers ||
>> + !caps->max_vertex_buffers) {
>
> When is max_vertex_buffers zero, really?
>
It should never be zero. If it is zero the driver does something
terrible wrong. I will remove that change from next
patch series.
Thanks for review.
greets
--
Christian Gmeiner, MSc
https://soundcloud.com/christian-gmeiner
More information about the mesa-dev
mailing list