[Mesa-dev] [PATCH 0/10] i965: Implement hiz and separate stencil for window framebuffer

Chad Versace chad at chad-versace.us
Sat Jun 4 17:45:33 PDT 2011


Patch 01: dri2proto
Patch 02: xf86-video-intel
Patch 03-10: mesa

I'm aware that this patch series is painful to review. Thank you in advance
for your reviewed-by's.

There is a related patch series on the intel-gfx list that adds the necessary
functionality to xf86-video-intel. See the thread with subject:
    ddx/dri: Add support for hiz and separate stencil buffers
    
Give close attention to the comments in "intel: Define enum intel_dri2_has_hiz".
That gives an overview of how the DRI2 handshake works and why it is
necessary.

I hear the grumbling already... "Chad significantly altered ancient, core
driver routines! Did he break the world?" I can confidently say "No"; this
patch series causes no regressions.

I have performed full piglit runs that cover all (meaningful)
combinations of the following:
    * xf86-video-intel: master vs my hiz branch
    * mesa: master vs my hiz branch
    * hiz enabled and disabled via environment var overrides
You can find the test results here:
    [1] http://people.freedesktop.org/~chadversary/piglit-results/2011-06-04-1600-hiz-compare/summary/index.html
    [2] http://people.freedesktop.org/~chadversary/piglit-results/2011-06-04-1600-hiz-compare/summary/changes.html
The column's titles should clearly mark what's what; the title format is
    "uuid--hostname--mesa at version--xf86-video-intel@version--hiz-[on|off]"
Column 1 is the baseline (mesa at master, ddx at master). Columns 2 and 5 use my
mesa hiz branch with hiz and separate stencil disabled.

The diff from column 1 to 2 shows no regressions and one fix.

CC: Eric Anholt <eric at anholt.net>
CC: Ian Romanick <idr at freedesktop.org>
CC: Kenneth Graunke <kenneth at whitecape.org>
CC: Kristian Høgsberg <krh at bitplanet.net>

Chad Versace (8):
  dri2: Add token for DRI2BufferHiz
  intel: Define enum intel_dri2_has_hiz
  intel: Add flags to intel_screen for hiz and separate stencil
  intel/intel_context.c: Remove unused functions
  intel: Add function intel_renderbuffer_set_hiz_region()
  intel: Refactor intel_update_renderbuffers()
  intel: Add assertions to intelCreateBuffer()
  intel: Request DRI2 buffers for separate stencil and hiz

 include/GL/internal/dri_interface.h        |    1 +
 src/mesa/drivers/dri/intel/intel_context.c |  792 ++++++++++++++++++++++------
 src/mesa/drivers/dri/intel/intel_fbo.c     |   12 +
 src/mesa/drivers/dri/intel/intel_fbo.h     |    5 +
 src/mesa/drivers/dri/intel/intel_screen.c  |  103 ++++-
 src/mesa/drivers/dri/intel/intel_screen.h  |   62 +++
 6 files changed, 803 insertions(+), 172 deletions(-)

-- 
1.7.5.2


More information about the mesa-dev mailing list