[Piglit] [PATCH] textureSize: Initialize sample_count to 1.

Paul Berry stereotype441 at gmail.com
Tue Oct 8 02:22:46 CEST 2013


On 23 September 2013 20:46, Kenneth Graunke <kenneth at whitecape.org> wrote:

> The multisampling tests initialize the number of miplevels to the number
> of samples.  Since this is zero, we allocate an array of zero miplevels,
> and then try to write to the first element.
>
> Fixes the following Valgrind error:
>
> Invalid write of size 8
>    at 0x403123: compute_miplevel_info (common.c:163)
>    by 0x402B9B: piglit_init (textureSize.c:455)
>    by 0x4EA6B89: run_test (piglit_fbo_framework.c:50)
>    by 0x4EA4BEE: piglit_gl_test_run (piglit-framework-gl.c:141)
>    by 0x401FC7: main (textureSize.c:68)
>  Address 0xa04d040 is 0 bytes after a block of size 0 alloc'd
>    at 0x4C2757B: malloc (in
> /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
>    by 0x40310A: compute_miplevel_info (common.c:161)
>    by 0x402B9B: piglit_init (textureSize.c:455)
>    by 0x4EA6B89: run_test (piglit_fbo_framework.c:50)
>    by 0x4EA4BEE: piglit_gl_test_run (piglit-framework-gl.c:141)
>    by 0x401FC7: main (textureSize.c:68)
>
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
> Cc: Chris Forbes <chrisf at ijw.co.nz>
> ---
>  tests/texturing/shaders/textureSize.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/tests/texturing/shaders/textureSize.c
> b/tests/texturing/shaders/textureSize.c
> index f010d9c..85a11d3 100644
> --- a/tests/texturing/shaders/textureSize.c
> +++ b/tests/texturing/shaders/textureSize.c
> @@ -432,6 +432,8 @@ piglit_init(int argc, char **argv)
>         int prog;
>         int tex_location;
>
> +       sample_count = 1;
> +
>         require_GL_features(test_stage);
>
>         if (sampler.target == GL_TEXTURE_CUBE_MAP_ARRAY)
>

It looks like the textureSize test creates its textures using common.c's
upload_miplevel_data(), which always passes a sample count of 4 to
glTexImage{2,3}DMultisample().  Would it be better to set sample_count to 4
to match this?

In addition, maybe we should change upload_miplevel_data() so that it
passes sample_count to glTexImage{2,3}DMultisample() rather than hardcoding
a sample count of 4.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20131007/223e625a/attachment-0001.html>


More information about the Piglit mailing list