intel: Use the blitter to upload TexSubImage data to busy textures.
authorEric Anholt <eric@anholt.net>
Wed, 9 Jun 2010 20:54:24 +0000 (13:54 -0700)
committerEric Anholt <eric@anholt.net>
Wed, 9 Jun 2010 21:23:46 +0000 (14:23 -0700)
commit94731797c671d6e46e3e0c94c1a0cec5071c0ac3
tree67535477faefe9441c8188a9aa2a5d0cb788b54e
parent503eb57a003f51c25687e9cf0ad6f7939a757f1b
intel: Use the blitter to upload TexSubImage data to busy textures.

This avoids many pipeline stalls in cairo-gl.
[ # ]  backend                         test   min(s) median(s) stddev. count
Before:
[  0]       gl            firefox-talos-gfx   36.799   36.851   2.34%    3/3
[  0]       gl            firefox-talos-svg   33.429   35.360   3.46%    3/3
After:
[  0]       gl            firefox-talos-gfx   35.895   36.250   0.48%    3/3
[  0]       gl            firefox-talos-svg   26.669   29.888   5.34%    3/3

This doesn't avoid all the pipeline stalls because the kernel reports
!busy for buffers on the flushing list.  That should be fixed in .36.
src/mesa/drivers/dri/intel/intel_tex_subimage.c