st/xorg: render throttling in block handler
authorKeith Whitwell <keithw@vmware.com>
Thu, 26 Nov 2009 11:55:47 +0000 (11:55 +0000)
committerKeith Whitwell <keithw@vmware.com>
Thu, 26 Nov 2009 11:55:47 +0000 (11:55 +0000)
commit7b0e4adaf21d4c788657eff41cb51d5c89647309
treecbdb55e113654e1485c63c7748c55c6dd758adea
parent8544c309d0a296449d11cf2cf52ca306662dc41d
st/xorg: render throttling in block handler

Similar to the classic swapbuffer throttling in GL drivers, put an
upper bound on the number of outstanding chunks of rendering the state
tracker can generate -- where calling the block handler denotes a
chunk.

Currently that number is set at around 4 "chunks", but could be
tweaked up or down.  If a better measure for the amount of outstanding
rendering is found, that would be fine too.

As it stands, this improves interactivity by preventing the X server
from queueing up arbitary amounts of rendering.
src/gallium/state_trackers/xorg/xorg_driver.c
src/gallium/state_trackers/xorg/xorg_renderer.c
src/gallium/state_trackers/xorg/xorg_tracker.h