[Piglit] [PATCH 00/16] Verify that meta does not pollute object namespaces
Emil Velikov
emil.l.velikov at gmail.com
Thu Jan 7 09:59:39 PST 2016
On 7 January 2016 at 02:53, Ian Romanick <idr at freedesktop.org> wrote:
> From: Ian Romanick <ian.d.romanick at intel.com>
>
> Here is the nearly complete set of tests. There still a couple things
> that should be done and a couple that could be done... but probably
> aren't worth the effort. More on that below.
>
> The current series tests the cross-product of GL operations that are
> implemented in meta and GL object types that could suffer from namespace
> pollution problems. Objects types tested are:
>
> Buffers
> Textures
> Framebuffers
> Renderbuffers
> Apple vertex array objects
> vertex and fragment assembly programs
>
> Operations that are tests:
>
> glClear
> glBitmap
> glDrawPixels from client memory
> glCopyPixels from client memory
> glClearTexSubImage
> glTexSubImage2D from a PBO
> glGetTexImage to a PBO
> glGetTexImage of a compressed texture to a PBO
> glBlitFramebuffer
> glCopyImageSubData
>
> These tests should be ported to OpenGL ES 1.x, and a test for
> glDrawTexOES (from GL_OES_draw_texture). I think Emil already
> volunteered to do that. :)
>
> In addition, we could test ATI fragment shader objects and occlusion
> query objects. I did not implement these for two reasons. First, I
> know that meta does not use them, so the tests should pass. Second,
> testing those object types will be a fair amount of work. ATI fragment
> shader objects don't support any query functions. The only way to
> determine that such an object was polluted would be to render using it.
> Similarly, query objects require rendering to get any state in the first
> place. I feel like it's not worth the effort to test these two object
> types. Should someone feel like implementing it, I will gladly review
> the patches. Just be sure to CC me.
>
> Ian Romanick (16):
> namespace-pollution: Initial framework and test cases for namespace
> pollution
> namespace-pollution: Add glBitmap as an operation to test
> namespace-pollution: Add glDrawPixels as an operation to test
> namespace-pollution: Add glCopyPixels as an operation to test
> namespace-pollution: Add glCopyTexSubImage2D as an operation to test
> namespace-pollution: Add glClearTexSubImage as an operation to test
> namespace-pollution: Add glTexSubImage2D as an operation to test
> namespace-pollution: Add glGetTexImage as an operation to test
> namespace-pollution: Add glBlitFramebuffer as an operation to test
> namespace-pollution: Add glCopyImageSubData as an operation to test
> namespace-pollution: Add framebuffer as an object to test
> namespace-pollution: Add glGetTexImage from a compressed texture as an
> operation to test
> namespace-pollution: Add renderbuffer as an object to test
> namespace-pollution: Add vertex program as an object to test
> namespace-pollution: Add fragment program as an object to test
> namespace-pollution: Add Apple vertex array as an object to test
>
> tests/all.py | 8 +
> tests/general/CMakeLists.gl.txt | 1 +
> tests/general/object-namespace-pollution.c | 1677 ++++++++++++++++++++++++++++
> 3 files changed, 1686 insertions(+)
> create mode 100644 tests/general/object-namespace-pollution.c
>
Going through the series I've only noticed a couple of small nitpicks.
With those addressed the series is
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
Personally I would have opted for "mandate the user to select a test",
this one can spare the silent_skip. And even passed a void **state, to
avoid duplication across setup/validate. Don't read too much into this
though.
Thanks
Emil
More information about the Piglit
mailing list