[Mesa-dev] [PATCH 11/33] intel/blorp: Use fake_interleaved_msaa in retile_w_to_y
Pohjolainen, Topi
topi.pohjolainen at gmail.com
Sat Sep 3 16:21:19 UTC 2016
On Sat, Sep 03, 2016 at 09:07:03AM -0700, Jason Ekstrand wrote:
> On Sat, Sep 3, 2016 at 9:04 AM, Pohjolainen, Topi
> <[1]topi.pohjolainen at gmail.com> wrote:
>
> On Thu, Sep 01, 2016 at 12:02:17PM -0700, Jason Ekstrand wrote:
> > On Thu, Sep 1, 2016 at 12:09 AM, Pohjolainen, Topi
>
> > <[1][2]topi.pohjolainen at gmail.com> wrote:
> >
> > On Wed, Aug 31, 2016 at 02:22:30PM -0700, Jason Ekstrand wrote:
> > > ---
> > > src/intel/blorp/blorp_blit.c | 4 +---
> > > 1 file changed, 1 insertion(+), 3 deletions(-)
> > >
> > > diff --git a/src/intel/blorp/blorp_blit.c
> > b/src/intel/blorp/blorp_blit.c
> > > index 05fad8f..2838a26 100644
> > > --- a/src/intel/blorp/blorp_blit.c
> > > +++ b/src/intel/blorp/blorp_blit.c
> > > @@ -1342,9 +1342,7 @@ surf_retile_w_to_y(const struct
> isl_device
> > *isl_dev,
> > > */
> > > if (isl_dev->info->gen > 6 &&
> > > info->surf.msaa_layout == ISL_MSAA_LAYOUT_INTERLEAVED)
> {
> > > - info->surf.logical_level0_px =
> info->surf.phys_level0_sa;
> > > - info->surf.samples = 1;
> > > - info->surf.msaa_layout = ISL_MSAA_LAYOUT_NONE;
> > > + surf_fake_interleaved_msaa(isl_dev, info);
> > So now we start calling surf_convert_to_single_slice() twice,
> > surf_retile_w_to_y() itself calls it and then
> > surf_fake_interleaved_msaa()
> > again. I'll read ahead a little how this evolves...
> >
> > Yes, we do. That *was* supposed to be safe, but actually wasn't
> due to
> > a mistake made a while ago. As of an earlier patch in the series,
> it
> > is safe.
>
> Could we this instead, or do we really need
> surf_convert_to_single_slice()
> to be called twice?
> if (isl_dev->info->gen > 6 &&
> info->surf.msaa_layout == ISL_MSAA_LAYOUT_INTERLEAVED) {
> surf_fake_interleaved_msaa(isl_dev, info);
> } else {
> surf_convert_to_single_slice(isl_dev, info);
> }
>
> We could in this case, but for interleaved MSAA destinations on gen7+,
> we call fake_interleaved_msaa separately. This particular use only
> happens for W-tiled sources (all HW) and W-tiled destinations on Sandy
> Bridge. It's way easier just to make calling it twice safe than to
> sort out all of the different places we may call it.
Right... It is probably cleaner:
Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
More information about the mesa-dev
mailing list