On 24 July 2012 11:24, Chad Versace <chad.vers...@linux.intel.com> wrote:
> On 07/18/2012 08:15 AM, Paul Berry wrote: > > On Gen6, multisampled null render targets don't seem to work > > properly--they cause the GPU to hang. So, as a workaround, we render > > into a dummy color buffer. > > > > Fortunately this situation (multisampled rendering without a color > > buffer) is rare, and we don't have to waste too much memory, because > > we can give the workaround buffer a very small pitch. > > > > Fixes piglit test "EXT_framebuffer_multisample/no-color {2,4} > > depth-computed *" on Gen6. > > > > - surf[0] = (BRW_SURFACE_NULL << BRW_SURFACE_TYPE_SHIFT | > > + if (fb->Visual.samples > 0) { > > + /* On Gen6, null render targets seem to cause GPU hangs when > > + * multisampling. So work around this problem by rendering into > dummy > > + * color buffer. > > + * > > + * To decrease the amount of memory needed by the workaround > buffer, we > > + * set its pitch to 128 bytes (the width of a Y tile). This > means that > > + * the amount of memory needed for the workaround buffer is > > + * (width_in_tiles + height_in_tiles - 1) tiles. > > It took me several minutes to see why this was the lower bound of needed > memory. > Yeah, it's kind of tricky reasoning. Let me know if you can think of a comment that would have made it easier to follow. > > Reviewed-by: Chad Versace <chad.vers...@linux.intel.com> > > I'm off to the dentist now, so I might not be able today to respond to your > comments on my msaa patch series. > No problem. Good luck, and thanks again.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev