On Thu, Mar 31, 2016 at 7:13 AM, Daniel Stone <dan...@fooishbar.org> wrote:
>> +static void *
>> +_gbm_dri_bo_map(struct gbm_bo *_bo,
>> +              uint32_t x, uint32_t y,
>> +              uint32_t width, uint32_t height,
>> +              uint32_t usage)
>> +{
>> +   struct gbm_dri_device *dri = gbm_dri_device(_bo->gbm);
>> +   struct gbm_dri_bo *bo = gbm_dri_bo(_bo);
>> +
>> +   if (!dri->context)
>> +      dri->context = dri->dri2->createNewContext(dri->screen, NULL, NULL, 
>> NULL);
>
> I'm a bit wary about creating a new context - especially as this ends
> up creating a full OpenGL context - but I also don't really know what
> would end up being better than this.


so, quick thought (I'll look at the rest of the patch later in the
morning)... but at the gallium level we have context flags
(PIPE_CONTEXT_*)..  perhaps add PIPE_CONTEXT_TRANSFER (or something
like that) and plumb it through dri layer to indicate that the context
is only used for map/unmap and not rendering.  That would give drivers
a hint to skip allocating various resources not needed for
transfer_map/unmap?

BR,
-R
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to