[Mesa-dev] [PATCH 0/5] [RFCish] Rework the miptree mapping logic

Ben Widawsky benjamin.widawsky at intel.com
Tue Jul 14 09:56:08 PDT 2015

A few patches which cleanup the miptree mapping logic. I haven't heavily tested
them yet, which is why I added the RFC label (admittedly I totally ignored the
unmap path, I hope it just works, but I'll find out). In particular, the last
patch will have a much full list of tests and platforms before I'd push. I
wanted to check if people were generally okay with this before I spent more time
since the one time I posted a smaller cleanup in this area, I met with some

The first patch is a resend with a non-trivial rebase after Anuj landed the
Yf/Ys initial support. It's somewhat unrelated, but I really like the patch, and
it goes with the general cleanup mantra.

The motivation of the patch series is actually trying to test out my new-blits
patches (the series that enables Y-tiling and blit capability for large texture
arrays). I was trying to force different mapping types based on various
attributes of the miptree, but found it almost impossible to predict what the
existing logic would actually choose. The goal was was both improving the
clarify of the code, and making it easier to experiment with other paths.

I've written a similar patch series about 3 times now and I figured I should
finally send it out, since most people I asked think it's a good idea (and none
of them has said it's a bad idea).

Ccing all the people that I've discussed this with...
Cc: Jason Ekstrand <jason at jlekstrand.net>
Cc: Chad Versace <chad.versace at linux.intel.com>
Cc: Kenneth Graunke <kenneth at whitecape.org>
Cc: Anuj Phogat <anuj.phogat at gmail.com>

Ben Widawsky (5):
  i965: Push miptree tiling request into flags
  i965/miptree: Cleanup some of the miptree map logic
  i965/miptree: Separate special miptree mappings
  i965/miptree: Shortcircuit writable & compressed miptrees
  i965/miptree: Rewrite the miptree map logic

 src/mesa/drivers/dri/i965/brw_tex_layout.c     |  21 ++--
 src/mesa/drivers/dri/i965/intel_blit.c         |  13 +++
 src/mesa/drivers/dri/i965/intel_blit.h         |   3 +
 src/mesa/drivers/dri/i965/intel_fbo.c          |   6 +-
 src/mesa/drivers/dri/i965/intel_mipmap_tree.c  | 133 ++++++++++++++-----------
 src/mesa/drivers/dri/i965/intel_mipmap_tree.h  |  15 ++-
 src/mesa/drivers/dri/i965/intel_tex.c          |   2 +-
 src/mesa/drivers/dri/i965/intel_tex_image.c    |   3 +-
 src/mesa/drivers/dri/i965/intel_tex_validate.c |   5 +-
 9 files changed, 118 insertions(+), 83 deletions(-)


More information about the mesa-dev mailing list