[Mesa-dev] [PATCH 1/2] anv/android: Set the BO flags in bo_cache_import (v2)

Tapani Pälli tapani.palli at intel.com
Mon Jun 4 07:47:59 UTC 2018


On 06/04/2018 08:50 AM, Jason Ekstrand wrote:
> Looks good to me.  Tapani (CCd) would know wheter we want 
> EXEC_OBJECT_ASYNC or not.  Either way (not setting EXEC_OBJECT_ASYNC 
> won't hurt),

Currently after import we set EXEC_OBJECT_WRITE and remove 
EXEC_OBJECT_ASYNC (further down the function), IIRC this is what 
happened also on other WSI implementations at that point of time.

> Reviewed-by: Jason Ekstrand <jason at jlekstrand.net 
> <mailto:jason at jlekstrand.net>>
> 
> Sorry for the mess and thanks for fixing it!
> 
> --Jason
> 
> 
> On Sun, Jun 3, 2018 at 5:38 PM, Mauro Rossi <issor.oruam at gmail.com 
> <mailto:issor.oruam at gmail.com>> wrote:
> 
>     Changes to avoid building error:
> 
>     external/mesa/src/intel/vulkan/anv_android.c:131:72:
>     error: too few arguments to function call, expected 5, have 4
>         result = anv_bo_cache_import(device, &device->bo_cache, dma_buf,
>     &bo);
>                  ~~~~~~~~~~~~~~~~~~~                                   
>          ^
>     1 error generated.
> 
>     (v2) Set the correct bo_flags based on support of 48bit addresses
>     and soft-pin
> 
>     Fixes: b0d50247a7 ("anv/allocator: Set the BO flags in
>     bo_cache_alloc/import")
>     Fixes: e7d0378bd9 ("anv: Soft-pin client-allocated memory")
>     Signed-off-by: Mauro Rossi <issor.oruam at gmail.com
>     <mailto:issor.oruam at gmail.com>>
>     ---
>       src/intel/vulkan/anv_android.c | 8 +++++++-
>       1 file changed, 7 insertions(+), 1 deletion(-)
> 
>     diff --git a/src/intel/vulkan/anv_android.c
>     b/src/intel/vulkan/anv_android.c
>     index 7e07dbaaa4..8611e77b82 100644
>     --- a/src/intel/vulkan/anv_android.c
>     +++ b/src/intel/vulkan/anv_android.c
>     @@ -128,7 +128,13 @@ anv_image_from_gralloc(VkDevice device_h,
>           */
>          int dma_buf = gralloc_info->handle->data[0];
> 
>     -   result = anv_bo_cache_import(device, &device->bo_cache, dma_buf,
>     &bo);
>     +   uint64_t bo_flags = 0;
>     +   if (device->instance->physicalDevice.supports_48bit_addresses)
>     +      bo_flags |= EXEC_OBJECT_SUPPORTS_48B_ADDRESS;
>     +   if (device->instance->physicalDevice.use_softpin)
>     +      bo_flags |= EXEC_OBJECT_PINNED;
>     +
>     +   result = anv_bo_cache_import(device, &device->bo_cache, dma_buf,
>     bo_flags, &bo);
>          if (result != VK_SUCCESS) {
>             return vk_errorf(device->instance, device, result,
>                              "failed to import dma-buf from
>     VkNativeBufferANDROID");
>     -- 
>     2.17.0
> 
>     _______________________________________________
>     mesa-dev mailing list
>     mesa-dev at lists.freedesktop.org <mailto:mesa-dev at lists.freedesktop.org>
>     https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>     <https://lists.freedesktop.org/mailman/listinfo/mesa-dev>
> 
> 
> 
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> 


More information about the mesa-dev mailing list