<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - SIGSEGV src/mesa/state_tracker/st_cb_blit.c:216"
href="https://bugs.freedesktop.org/show_bug.cgi?id=59450">59450</a>
</td>
</tr>
<tr>
<th>Keywords</th>
<td>regression
</td>
</tr>
<tr>
<th>CC</th>
<td>anuj.phogat@gmail.com
</td>
</tr>
<tr>
<th>Assignee</th>
<td>mesa-dev@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Summary</th>
<td>SIGSEGV src/mesa/state_tracker/st_cb_blit.c:216
</td>
</tr>
<tr>
<th>Severity</th>
<td>critical
</td>
</tr>
<tr>
<th>Classification</th>
<td>Unclassified
</td>
</tr>
<tr>
<th>OS</th>
<td>Linux (All)
</td>
</tr>
<tr>
<th>Reporter</th>
<td>vlee@freedesktop.org
</td>
</tr>
<tr>
<th>Hardware</th>
<td>x86-64 (AMD64)
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Version</th>
<td>git
</td>
</tr>
<tr>
<th>Component</th>
<td>Mesa core
</td>
</tr>
<tr>
<th>Product</th>
<td>Mesa
</td>
</tr></table>
<p>
<div>
<pre>mesa: 780c2cb42bc7bff9f89a998effb732bdcd72630b (master)
Run piglit ARB_ES2_compatiblity FBO blit to missing attachment test on softpipe
or llvmpipe.
$ ./bin/fbo-missing-attachment-blit es2 to -auto
Testing blit from complete buffer to buffer with missing attachment...
Segmentation fault (core dumped)
(gdb) bt
#0 0x00007fb648e442ff in st_BlitFramebuffer (ctx=0x1702c90, srcX0=0, srcY0=0,
srcX1=32, srcY1=32,
dstX0=0, dstY0=0, dstX1=32, dstY1=32, mask=16640, filter=9728)
at src/mesa/state_tracker/st_cb_blit.c:216
#1 0x00007fb648cad257 in _mesa_BlitFramebuffer (srcX0=0, srcY0=0, srcX1=32,
srcY1=32, dstX0=0, dstY0=0,
dstX1=32, dstY1=32, mask=16640, filter=9728) at
src/mesa/main/fbobject.c:3057
#2 0x00007fb64b54db6a in stub_glBlitFramebuffer (srcX0=0, srcY0=0, srcX1=32,
srcY1=32, dstX0=0, dstY0=0,
dstX1=32, dstY1=32, mask=16640, filter=9728)
at piglit/tests/util/generated_dispatch.c:1523
#3 0x0000000000401625 in do_blit_test (use_es2=true,
from_missing_to_complete=false)
at
piglit/tests/spec/arb_es2_compatibility/fbo-missing-attachment-blit.c:160
#4 0x000000000040183e in piglit_init (argc=3, argv=0x7fff202693b8)
at
piglit/tests/spec/arb_es2_compatibility/fbo-missing-attachment-blit.c:214
#5 0x00007fb64b54a879 in run_test (gl_fw=0x7fb64b813820 <glut_fw>, argc=3,
argv=0x7fff202693b8)
at piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:125
#6 0x00007fb64b54898d in piglit_gl_test_run (argc=3, argv=0x7fff202693b8,
config=0x7fff202692a0)
at piglit/tests/util/piglit-framework-gl.c:127
#7 0x0000000000401286 in main (argc=4, argv=0x7fff202693b8)
at piglit/tests/spec/arb_es2_compatibility/fbo-missing-attachment-blit.c:67
(gdb) frame 0
#0 0x00007fb648e442ff in st_BlitFramebuffer (ctx=0x1702c90, srcX0=0, srcY0=0,
srcX1=32, srcY1=32,
dstX0=0, dstY0=0, dstX1=32, dstY1=32, mask=16640, filter=9728)
at src/mesa/state_tracker/st_cb_blit.c:216
216 struct pipe_surface *dstSurf = dstRb->surface;
(gdb) info locals
srcRb = 0x1758640
dstRb = 0x0
srcSurf = 0x1758990
dstSurf = 0x1702c90
srcAtt = 0x1759060
depthStencil = 1280
st = 0x1749e30
pFilter = 0
readFB = 0x1758e10
drawFB = 0x17589d0
clip = {srcX0 = 0, srcY0 = 0, srcX1 = 32, srcY1 = 32, dstX0 = 0, dstY0 = 0,
dstX1 = 32, dstY1 = 32}
blit = {dst = {resource = 0x850000001741c70, level = 24128656, box = {x = 0, y
= 0, z = 0, width = 32,
height = 32, depth = 1}, format = 32767}, src = {resource = 0x2a48d03f1f,
level = 539398160, box = {
x = 0, y = 0, z = 32694, width = 32, height = 32, depth = 1}, format =
32694}, mask = 15,
filter = 0, scissor_enable = 0 '\000', scissor = {minx = 42, miny = 0, maxx =
36928, maxy = 8230}}
__FUNCTION__ = "st_BlitFramebuffer"
ab36ca061412c49143a5f2af53bee862fbd40351 is the first bad commit
commit ab36ca061412c49143a5f2af53bee862fbd40351
Author: Anuj Phogat <<a href="mailto:anuj.phogat@gmail.com">anuj.phogat@gmail.com</a>>
Date: Tue Dec 11 20:17:47 2012 -0800
mesa: Add error checking in _mesa_BlitFramebuffer() for MRTs
This patch adds required error checking in _mesa_BlitFramebuffer() when
blitting to multiple color render targets. It also fixes a case when
blitting to a framebuffer with renderbuffer/texture attached to
GL_COLOR_ATTACHMENT{i} (where i!=0). Earlier it skips color blitting if
nothing is found attached to GL_COLOR_ATTACHMENT0.
V2: Fixed a case when number of draw buffer attachments are zero.
V3: Do compatible_color_datatypes() and compatible_resolve_formats()
check for all the draw renderbuffers in fbobject.c. Fix debug code
at bottom of _mesa_BlitFramebuffer() to handle MRTs. Combine error
checking code for linear blits with other color blit error checking.
Signed-off-by: Anuj Phogat <<a href="mailto:anuj.phogat@gmail.com">anuj.phogat@gmail.com</a>>
Reviewed-by: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>>
Reviewed-by: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>>
:040000 040000 d7ff03a64bb3af0c2f754bc266ce791fea98cf25
98d5e6ea72f2fcf765cd8241682ab18c8081cc70 M src
bisect run success</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>