[Piglit] [PATCH 00/11] Lots of UBO tests

Ian Romanick idr at freedesktop.org
Mon Sep 8 14:34:45 PDT 2014


A couple weeks ago I told Dave Airlie that I was working on a giant pile
UBO tests.  This is not that work, but it is most of the changes to get
ready for that work.  The first three patches were written quite some
time ago while fixing bugs in Mesa's UBO code.  The remainder were
developed while working on my UBO test generator script.

The test generator script effort has been slowed by many bugs in various
UBO implementations.  I have recently submitted several Mesa bugs
(listed below) that were discovered by this work.

https://bugs.freedesktop.org/show_bug.cgi?id=83468
https://bugs.freedesktop.org/show_bug.cgi?id=83506
https://bugs.freedesktop.org/show_bug.cgi?id=83508
https://bugs.freedesktop.org/show_bug.cgi?id=83533

I have also found numerous issues in NVIDIA's closed source driver:

- Global layout qualifiers are ignored.

    layout(row_major) uniform;

    uniform U { mat4 m; }; // m will be column-major

- Layout qualifiers on structures are ignored.

    struct S { mat4 m; };

    uniform U { layout(row_major) S s; }; // s.m will be column-major

- Small structures are not padded to vec4-size.  See patch #8.

It seems like there was a 4th bug, but I can't remember what it was.

As a result, I don't have access to a correct implementation to verify
my script... which generates random tests.  I have to scrutinize each
failing test that is generated to determine whether the script or driver
is at fault.  Anyway... should get something out RSN.



More information about the Piglit mailing list