ResourceTracker: Use vkGetLinearImageLayout2GOOGLE to check linear image layout.
This change replaces the old vkGetLinearImageLayoutGOOGLE() with
vkGetLinearImageLayout2GOOGLE() so that it could get the correct
linear image layout (offset / stride) from host Vulkan device.
Bug: fxbug.dev/94188
Change-Id: I4b8773f8bd44af2f6b5e562a28ca164276a8666d
diff --git a/system/vulkan_enc/ResourceTracker.cpp b/system/vulkan_enc/ResourceTracker.cpp
index 32a849b..475b42e 100644
--- a/system/vulkan_enc/ResourceTracker.cpp
+++ b/system/vulkan_enc/ResourceTracker.cpp
@@ -2613,11 +2613,14 @@
// Get row alignment from host GPU.
VkDeviceSize offset;
VkDeviceSize rowPitchAlignment;
- enc->vkGetLinearImageLayoutGOOGLE(device, createInfo->format, &offset,
- &rowPitchAlignment,
- true /* do lock */);
+
+ VkImageCreateInfo createInfoDup = *createInfo;
+ createInfoDup.pNext = nullptr;
+ enc->vkGetLinearImageLayout2GOOGLE(device, &createInfoDup, &offset,
+ &rowPitchAlignment,
+ true /* do lock */);
ALOGD(
- "vkGetLinearImageLayoutGOOGLE: format %d offset %lu "
+ "vkGetLinearImageLayout2GOOGLE: format %d offset %lu "
"rowPitchAlignment = %lu",
(int)createInfo->format, offset, rowPitchAlignment);