[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