[waffle] [PATCH 0/7] nacl backend implementation

Emil Velikov emil.l.velikov at gmail.com
Tue Feb 3 09:41:50 PST 2015


Hi Tapani,

On 30 January 2015 at 10:33, Tapani Pälli <tapani.palli at intel.com> wrote:
> Hi;
>
> As a Finn I interpret silence as 'yes' :)
I believe this interpretation spans across multiple countries :-P

> So I started to hack on swap
> completion event support. I believe it can be useful for other backends also
> since then application can throttle rendering and receive information on
> swaps.
>

> I made early hacky prototype that fixes the issues I've seen with nacl
> backend:
> http://cgit.freedesktop.org/~tpalli/waffle/log/?h=hacky
>
> I have a few questions on implementation details for the
> 'waffle_swap_complete'. This is my proposal for the API:
>
> typedef void (*waffle_swapbuffers_cb) (struct waffle_window *);
>
> bool waffle_set_swap_complete_handler(waffle_swapbuffers_cb func);
> (would fail if backend does not support this)
>
Considering the needs of the nacl platform, I'm not against the idea
of adding new API. Then again I believe that Chad will have some input
about it.
Small note: in it's current design the API can be abused, a bit. My
comments on the patch should have all the details.

> Optionally we could put timestamp there also as callback data but I'm not
> sure what format is preferred for that. Any ideas here would be good. I'm
> not sure the OML triple (ust, msc, sbc) like in GLX_INTEL_swap_event make
> sense or should it be something simpler?
>
I fear that I don't have the relevant experience to provide any
meaningful comment on the topic :'-(

> Then, whenever waffle_wndow_swap_buffers(window) gets called, backend will
> call callback if it is set. It should be noted that it can happen from a
> separate thread.
>
> How does this sound?
>
I've sent out a few comments/bikeshed(s) on the series - hope that you
find them useful, or at least not too picky.

Thanks
Emil


More information about the waffle mailing list