[Mesa-dev] 7 questions and proposals about changes in the Gallium interface
Thomas Hellstrom
thellstrom at vmware.com
Tue Mar 8 13:17:34 PST 2011
On 03/08/2011 05:11 PM, José Fonseca wrote:
> On Mon, 2011-03-07 at 02:38 -0800, Keith Whitwell wrote:
>
>> On Sun, 2011-03-06 at 18:42 +0100, Marek Olšák wrote:
>>
>>> 2) is_resource_referenced
>>>
>>> Now that the transfer functions are in pipe_context, is this hook
>>> really
>>> necessary?
>>>
>> Good question. I'd like to see those functions go away as they are
>> round-trips baked into the interface which is a pain if you try and
>> remote this stuff.
>>
>> I guess you'd still need to catch the write-after-read case within a
>> single context and turn that into a flush.
>>
>> I think others (Jose in particular) should comment, but I suspect that
>> individual drivers could now do this internally& not need to expose the
>> interface in gallium.
>>
> That's correct. State trackers no longer need this. This interface can
> be removed, and drivers that need it internally should be updated to use
> internal private interfaces.
>
One should remember, though, that with the state tracker construct
if (is_resource_referenced())
flush();
this must not be replaced with an unconditional flush, since that may be
very wasteful on some hardware. This means that drivers need to be
converted to do the necessary flushing themselves if this interface is
removed. Otherwise they will misrender.
/Thomas
More information about the mesa-dev
mailing list