[Mesa-dev] [PATCH 07/26] glapi: Annotate functions with "marshal" attribute.

Emil Velikov emil.l.velikov at gmail.com
Fri Feb 10 16:58:19 UTC 2017


On 8 February 2017 at 18:03, Marek Olšák <maraeo at gmail.com> wrote:
> From: Paul Berry <stereotype441 at gmail.com>
>
> Several API functions require special treatment in order to be marshalled
> to a background thread.  Others can't be safely executed in a background
> thread and need to be executed synchronously (e.g. since they return data
> through a pointer argument).
>
> This annotation will be used when code generating thread marshalling code,
> to ensure that each function is marshalled in the correct way.
>
> Note that PixelMap functions are marked as synchronous for now since
> their pointer may be relative to buffer on the GPU, so we'll need
> special logic to marshal them properly.
>
> v2: Move description of attribute types to a comment in the dtd file.
> ---
>  src/mapi/glapi/gen/ARB_base_instance.xml           |  6 ++--
>  .../glapi/gen/ARB_draw_elements_base_vertex.xml    |  8 ++---
>  src/mapi/glapi/gen/ARB_draw_instanced.xml          |  4 +--
>  src/mapi/glapi/gen/EXT_transform_feedback.xml      |  2 +-
>  src/mapi/glapi/gen/gl_API.dtd                      | 11 +++++-
>  src/mapi/glapi/gen/gl_API.xml                      | 40 +++++++++++++---------
Food for thought:

Do we have (m)any extensions which are yet to be implemented that
would need the new tag ?
Is it worth having a separate black/whitelist

-Emil


More information about the mesa-dev mailing list