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:tags/18.2-branchpointb0d50247a7
("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@gmail.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
@@ -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"); |