[Mesa-dev] Mesa (master): mesa/st: Fix pipe_framebuffer_state:: height for PIPE_TEXTURE_1D_ARRAY.

Jose Fonseca jfonseca at vmware.com
Thu Apr 24 04:31:35 PDT 2014



----- Original Message -----
> On 24.04.2014 03:12, Jose Fonseca wrote:
> > Module: Mesa
> > Branch: master
> > Commit: fd92346c53ed32709c7b56ce58fb9c9bf43ce9a8
> > URL:
> > https://urldefense.proofpoint.com/v1/url?u=http://cgit.freedesktop.org/mesa/mesa/commit/?id%3Dfd92346c53ed32709c7b56ce58fb9c9bf43ce9a8&k=oIvRg1%2BdGAgOoM1BIlLLqw%3D%3D%0A&r=NMr9uy2iTjWVixC0wOcYCWEIYhfo80qKwRgdodpoDzA%3D%0A&m=XOFDALlPDjLntm1Qs4okrzKRXQoXq3jonmJqsdohb6E%3D%0A&s=27ef6f50a2586caf483f351b5e80126e886087d89d0f98c9d777a6e8e80a229e
> > 
> > Author: José Fonseca <jfonseca at vmware.com>
> > Date:   Thu Apr  3 15:56:46 2014 +0100
> > 
> > mesa/st: Fix pipe_framebuffer_state::height for PIPE_TEXTURE_1D_ARRAY.
> > 
> > This prevents buffer overflow w/ llvmpipe when running piglit
> > 
> >   bin/gl-3.2-layered-rendering-clear-color-all-types 1d_array single_level
> >   -fbo -auto
> > 
> > v2: Compute the framebuffer size as the minimum size, as pointed out by
> > Brian;  compacted code;  ran piglit quick test list (with no
> > regressions.)
> 
> This commit broke the piglit test drawbuffer-modes for me with radeonsi:
> 
> ../../../src/mesa/state_tracker/st_atom_framebuffer.c:153:update_framebuffer_state:
> Assertion `framebuffer->width != (2147483647 * 2U + 1U)' failed.
> Apr 24 16:38:02 kaveri kernel: [26036.258250] traps:
> drawbuffer-mode[6292] trap int3 ip:7f50e6f52526 sp:7ffffcc82640 error:0
> zsh: trace trap  DISPLAY=:1
> /home/daenzer/src/piglit-git/piglit/bin/drawbuffer-modes -auto
> 
> The test was previously passing.

It passes here with llvmpipe, and I don't have radeonsi machine.

It really shouldn't happen.  The only way this assertion could fail is if the framebuffer had no color/depth-stencil surfaces.  What's the contents of *framebuffer, and what's the backtrace?

Anyway, it's easy to workaround it -- the attached patch should avoid it --, but it's sweeping dirt under the rug.  I suspect something else might have gone bad.


Jose
-------------- next part --------------
A non-text attachment was scrubbed...
Name: update_framebuffer_state.patch
Type: text/x-patch
Size: 5856 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140424/8734f550/attachment-0001.bin>


More information about the mesa-dev mailing list