<div dir="ltr">On 29 December 2012 04:35, Chris Forbes <span dir="ltr"><<a href="mailto:chrisf@ijw.co.nz" target="_blank">chrisf@ijw.co.nz</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Previously we were putting the 2x2 (or 4x2) fake dimensions of the<br>
surface into the renderbuffer wrapper. This is different from how<br>
other parts of the driver expect multisample renderbuffers to be set up,<br>
and produced stalls and memory stomps.<br>
<br>
Pulls multisample textures into line with classic multisample<br>
renderbuffers, fixing the arb_texture_multisample-sample-mask-execution<br>
-tex piglit.<br>
<br>
Signed-off-by: Chris Forbes <<a href="mailto:chrisf@ijw.co.nz">chrisf@ijw.co.nz</a>><br></blockquote><div><br></div><div>I hope this patch can also go away once I've cleaned up the logical vs. physical size ambiguity.<br>
</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
---<br>
 src/mesa/drivers/dri/intel/intel_fbo.c | 15 ++++++++++++---<br>
 1 file changed, 12 insertions(+), 3 deletions(-)<br>
<br>
diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c<br>
index 4cc2c00..be0c117 100644<br>
--- a/src/mesa/drivers/dri/intel/intel_fbo.c<br>
+++ b/src/mesa/drivers/dri/intel/intel_fbo.c<br>
@@ -507,9 +507,18 @@ intel_renderbuffer_update_wrapper(struct intel_context *intel,<br>
    rb->Format = image->TexFormat;<br>
    rb->InternalFormat = image->InternalFormat;<br>
    rb->_BaseFormat = image->_BaseFormat;<br>
-   rb->Width = mt->level[level].width;<br>
-   rb->Height = mt->level[level].height;<br>
-   rb->NumSamples = mt->num_samples;<br>
+<br>
+   if (mt->num_samples) {<br>
+      /* silly hack */<br>
+      rb->Width = mt->singlesample_width0;<br>
+      rb->Height = mt->singlesample_height0;<br>
+      rb->NumSamples = mt->num_samples;<br>
+   }<br>
+   else {<br>
+      rb->Width = mt->level[level].width;<br>
+      rb->Height = mt->level[level].height;<br>
+      rb->NumSamples = mt->num_samples;<br>
+   }<br>
<br>
    rb->Delete = intel_delete_renderbuffer;<br>
    rb->AllocStorage = intel_nop_alloc_storage;<br>
<span class="HOEnZb"><font color="#888888">--<br>
1.8.0.3<br>
<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev" target="_blank">http://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</font></span></blockquote></div><br></div></div>