On Wed, 2009-07-01 at 23:47 -0700, Corbin Simpson wrote:
> So, a couple months ago I opined about the inability of Gallium to
> guarantee non-overlapping blits. I need to revisit the subject.
> 
> I can't detect when blits will overlap, every time, without massive hax,
> and I'm not terribly certain that the hax work. Somehow (probably
> through texture blanketing) I'm seeing two BOs, overlapping, being used
> in texture_copy. I have no way of detecting that overlap at the moment,
> and doing so is going to be icky.
> 
> I propose PIPE_CAP_BLITTER, a simple pipe cap that just says, "Yes, I
> have a 2D engine or some other way to do overlapping blits magically."
> If this isn't set, use one of the util functions that semi-fallback to
> textured drawing instead of straight surface_copy. In some state
> trackers (Xorg EXA) this also can be used to indicate to higher
> userspace the abilities of the card in a way that permits optimizations.

This may be a good idea anyway, but 'overlapping BOs' sounds like a
memory management bug somewhere... Overlapping blits should only occur
when the source and destination BOs are one and the same.


-- 
Earthling Michel Dänzer           |                http://www.vmware.com
Libre software enthusiast         |          Debian, X and DRI developer

------------------------------------------------------------------------------
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to