[Mesa-dev] [PATCH 00/13] Fix stencil texturing and BO caching bugs
nanleychery at gmail.com
Fri Jul 6 20:29:29 UTC 2018
On Fri, Jul 06, 2018 at 03:36:01PM +0300, Pohjolainen, Topi wrote:
> On Tue, Jun 12, 2018 at 12:21:52PM -0700, Nanley Chery wrote:
> > This series fixes a couple stencil texturing bugs on HSW and
> > cache-tracking for certain stencil BOs on all platforms.
> > Nanley Chery (13):
> > i965: Set the r8stencil flag in miptree_finish_write
> > i965/miptree: Set the r8stencil flag in map_depthstencil
> > i965/draw: Set the r8stencil flag after drawing
> > i965/draw: Fix adding the stencil bo to the depth cache
> > i965/miptree: Use make_surface in map_blit
> > i965/miptree: Delete MIPTREE_CREATE_LINEAR
> > i965/miptree: Share tiling_flags in miptree_create
> > i965/miptree: Share the miptree format in miptree_create
> > i965/miptree: Share alloc_flags in miptree_create
> I'm not sure if this maintains the BO_ALLOC_BUSY.
> > i965/miptree: Add and use mt_surf_usage
> > i965/miptree: Refactor miptree_create
> > i965/miptree: Create the r8stencil_mt immediately
> > i965/miptree: Inline make_separate_stencil
> Same here.
Yes, those two patches don't maintain BO_ALLOC_BUSY for the cases where
the user creates a depth, depth-stencil, or stencil texture. It seems
better this way though since, like a color texture, those are liable to
be accessed with the CPU immediately.
I think we can maintain BO_ALLOC_BUSY for multisampled textures, since
they will never be accessed on the CPU. I'll send a follow-up patch.
AFAICT, BO_ALLOC_BUSY wasn't used for those textures until commit
a73d56dce37ae13f422215de1bf1fdfb8e2f6ed7, which allocated renderbuffers
for depth stencil textures and implicitly (and perhaps accidentally)
asked for a BUSY BO. I haven't thoroughly checked though.
> Otherwise the series is:
> Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
Thanks for the review!
> > src/mesa/drivers/dri/i965/brw_blorp.c | 6 +-
> > src/mesa/drivers/dri/i965/brw_clear.c | 8 -
> > src/mesa/drivers/dri/i965/brw_draw.c | 14 +-
> > src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 211 ++++++++----------
> > src/mesa/drivers/dri/i965/intel_mipmap_tree.h | 5 +-
> > src/mesa/drivers/dri/i965/intel_tex_image.c | 3 -
> > 6 files changed, 103 insertions(+), 144 deletions(-)
> > --
> > 2.17.0
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev