[Piglit] [PATCH 3/6] fbo: Require ARB_texture_non_power_of_two in a test that doesn't strictly need it
Ian Romanick
idr at freedesktop.org
Tue Oct 11 01:41:35 UTC 2016
On 10/10/2016 06:20 PM, Ian Romanick wrote:
> On 10/10/2016 04:02 PM, Ilia Mirkin wrote:
>> FWIW this already skips for nv3x:
>>
>> $ DISPLAY=:1 bin/fbo-depthtex -auto
>> FBO incomplete (status = 0x8cd6)
>
> Which is GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT... because the textures
> that are attached to the FBO are invalid due to being created with
> non-power-of-two size. It seems like this test should fail if there's a
> GL error after creating the textures.
Hmm... I also think we're being too lax most places with framebuffer
status. There are tons of tests that skip of status !=
GL_FRAMEBUFFER_COMPLETE. However, I think almost all of those should be
more like
const GLenum status = glCheckFramebufferStatus(...);
if (status == GL_FRAMEBUFFER_UNSUPPORTED)
skip
if (status != GL_FRAMEBUFFER_COMPLETE)
error
The annoying thing about that is we also test a lot of things on EXT_fbo
that are only possible with ARB_fbo (e.g., all the tests that try
GL_LUMINANCE_ALPHA attachments).
Unless someone beats me to it, I might fix this up on my next
international flight... end of January.
>> PIGLIT: {"result": "skip" }
>>
>> On Mon, Oct 10, 2016 at 6:51 PM, Ian Romanick <idr at freedesktop.org> wrote:
>>> From: Ian Romanick <ian.d.romanick at intel.com>
>>>
>>> This test could be made to work without ARB_texture_non_power_of_two.
>>> However, it has a bunch of hardcoded pixel locations that would need to
>>> be updated for a new size. I was lazy. The only driver that I could
>>> find that supports the other requirements of this test (i.e.,
>>> ARB_fragment_program) and not ARB_texture_non_power_of_two is NV30.
>>>
>>> This /should/ make this test go from FAIL to SKIP on NV30, but I have
>>> not tested. It should not affect any other driver.
>>>
>>> Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
>>> Cc: Ilia Mirkin <imirkin at alum.mit.edu>
>>> ---
>>> tests/fbo/fbo-depthtex.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/tests/fbo/fbo-depthtex.c b/tests/fbo/fbo-depthtex.c
>>> index e60a532..e70c227 100644
>>> --- a/tests/fbo/fbo-depthtex.c
>>> +++ b/tests/fbo/fbo-depthtex.c
>>> @@ -160,4 +160,5 @@ void piglit_init(int argc, char **argv)
>>> {
>>> piglit_require_extension("GL_EXT_framebuffer_object");
>>> piglit_require_extension("GL_ARB_fragment_program");
>>> + piglit_require_extension("GL_ARB_texture_non_power_of_two");
>>> }
>>> --
>>> 2.5.5
>>>
>
More information about the Piglit
mailing list