<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:10pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p style="margin-top:0;margin-bottom:0"></p>
<div>> Would it be wise to just initialize everything explicitly? For example<br>
> this is what _mesa_draw_arrays does:<br>
> <br>
>    memset(&prim, 0, sizeof(prim));<br>
>    prim.begin = 1;<br>
>    prim.end = 1;<br>
>    prim.mode = mode;<br>
>    prim.num_instances = numInstances;<br>
>    prim.base_instance = baseInstance;<br>
>    prim.draw_id = drawID;<br>
>    prim.is_indirect = 0;<br>
>    prim.start = start;<br>
>    prim.count = count;<br>
> <br>
> and vbo_exec_Begin has:<br>
> <br>
>    exec->vtx.prim[i].mode = mode;<br>
>    exec->vtx.prim[i].begin = 1;<br>
>    exec->vtx.prim[i].end = 0;<br>
>    exec->vtx.prim[i].indexed = 0;<br>
>    exec->vtx.prim[i].pad = 0;<br>
>    exec->vtx.prim[i].start = exec->vtx.vert_count;<br>
>    exec->vtx.prim[i].count = 0;<br>
>    exec->vtx.prim[i].num_instances = 1;<br>
>    exec->vtx.prim[i].base_instance = 0;<br>
>    exec->vtx.prim[i].is_indirect = 0;<br>
> <br>
> I do think that your change is all that's strictly needed though.<br>
> Sorry about the breakage!</div>
<p></p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">I think you are right, we should initialize all fields explicitly here. I will send out patch for this and
<br>
</p>
<p style="margin-top:0;margin-bottom:0">also modify commit message as per suggested by Brian.<br>
</p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<div id="Signature">
<meta content="text/html; charset=UTF-8">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); font-family: Calibri, Arial, Helvetica, sans-serif, "EmojiFont", "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;">
<p><span style="font-size:11pt; font-family:Calibri,Helvetica,sans-serif"></span><span style="font-size:10pt; font-family:Calibri,Helvetica,sans-serif">Regards,</span></p>
<span style="font-size:10pt"></span><span style="font-size:11pt; font-family:Calibri,Helvetica,sans-serif"></span><span style="font-size:10pt"></span>
<p><span style="font-size:10pt; font-family:Calibri,Helvetica,sans-serif">Neha</span><br>
</p>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Ilia Mirkin <imirkin@alum.mit.edu><br>
<b>Sent:</b> Tuesday, January 29, 2019 10:58:01 AM<br>
<b>To:</b> Neha Bhende<br>
<b>Cc:</b> Brian Paul; ML Mesa-dev<br>
<b>Subject:</b> Re: [Mesa-dev] [Review Request (master branch)] st/mesa: Fix topogun-1.06-orc-84k-resize.trace crash</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">Would it be wise to just initialize everything explicitly? For example<br>
this is what _mesa_draw_arrays does:<br>
<br>
   memset(&prim, 0, sizeof(prim));<br>
   prim.begin = 1;<br>
   prim.end = 1;<br>
   prim.mode = mode;<br>
   prim.num_instances = numInstances;<br>
   prim.base_instance = baseInstance;<br>
   prim.draw_id = drawID;<br>
   prim.is_indirect = 0;<br>
   prim.start = start;<br>
   prim.count = count;<br>
<br>
and vbo_exec_Begin has:<br>
<br>
   exec->vtx.prim[i].mode = mode;<br>
   exec->vtx.prim[i].begin = 1;<br>
   exec->vtx.prim[i].end = 0;<br>
   exec->vtx.prim[i].indexed = 0;<br>
   exec->vtx.prim[i].pad = 0;<br>
   exec->vtx.prim[i].start = exec->vtx.vert_count;<br>
   exec->vtx.prim[i].count = 0;<br>
   exec->vtx.prim[i].num_instances = 1;<br>
   exec->vtx.prim[i].base_instance = 0;<br>
   exec->vtx.prim[i].is_indirect = 0;<br>
<br>
I do think that your change is all that's strictly needed though.<br>
Sorry about the breakage!<br>
<br>
On Tue, Jan 29, 2019 at 1:31 PM Neha Bhende <bhenden@vmware.com> wrote:<br>
><br>
> This patch fixes regression caused by<br>
> bac8534267- st/mesa: allow glDrawElements to work with GL_SELECT feedback<br>
> We also need to set instance count while creating new rastpos stage.<br>
><br>
> Reviewed-by: Brian Paul <brianp@vmware.com><br>
> ---<br>
>  src/mesa/state_tracker/st_cb_rasterpos.c | 1 +<br>
>  1 file changed, 1 insertion(+)<br>
><br>
> diff --git a/src/mesa/state_tracker/st_cb_rasterpos.c b/src/mesa/state_tracker/st_cb_rasterpos.c<br>
> index fecaaf7..cca2fba 100644<br>
> --- a/src/mesa/state_tracker/st_cb_rasterpos.c<br>
> +++ b/src/mesa/state_tracker/st_cb_rasterpos.c<br>
> @@ -206,6 +206,7 @@ new_draw_rastpos_stage(struct gl_context *ctx, struct draw_context *draw)<br>
>     rs->prim.indexed = 0;<br>
>     rs->prim.begin = 1;<br>
>     rs->prim.end = 1;<br>
> +   rs->prim.num_instances = 1;<br>
>     rs->prim.start = 0;<br>
>     rs->prim.count = 1;<br>
><br>
> --<br>
> 2.7.4<br>
><br>
> _______________________________________________<br>
> mesa-dev mailing list<br>
> mesa-dev@lists.freedesktop.org<br>
> <a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Fmesa-dev&amp;data=02%7C01%7Cbhenden%40vmware.com%7Ca611d0289a334ee9273708d6861bb82d%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C0%7C0%7C636843850945848627&amp;sdata=03tQMDRMwfagcQPeALU9Ox2txEb0A8ajAxj2CUgtmIk%3D&amp;reserved=0">
https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Fmesa-dev&amp;data=02%7C01%7Cbhenden%40vmware.com%7Ca611d0289a334ee9273708d6861bb82d%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C0%7C0%7C636843850945848627&amp;sdata=03tQMDRMwfagcQPeALU9Ox2txEb0A8ajAxj2CUgtmIk%3D&amp;reserved=0</a><br>
</div>
</span></font></div>
</body>
</html>