fuchsia: Label all exportable images/buffers as sysmem-backed.

On Fuchsia, all Vulkan images and buffers exportable to VMO
handles are sysmem-backed. We should set the "isSysmemBackedMemory"
flag to true, so that clients can get correct memory
requirements for these images and buffers.

TEST=ScenicPixelTest.UseExternalImage on host-gpu and software-gpu.

Change-Id: I28fbb9fb696375ad2c5b956f89a47212969cd3e2
diff --git a/system/vulkan_enc/ResourceTracker.cpp b/system/vulkan_enc/ResourceTracker.cpp
index 2293df0..cdb34ee 100644
--- a/system/vulkan_enc/ResourceTracker.cpp
+++ b/system/vulkan_enc/ResourceTracker.cpp
@@ -2893,6 +2893,13 @@
         const VkBufferCollectionImageCreateInfoFUCHSIA* extBufferCollectionPtr =
             vk_find_struct<VkBufferCollectionImageCreateInfoFUCHSIA>(pCreateInfo);
         bool isSysmemBackedMemory = false;
+
+        if (extImgCiPtr &&
+            (extImgCiPtr->handleTypes &
+             VK_EXTERNAL_MEMORY_HANDLE_TYPE_TEMP_ZIRCON_VMO_BIT_FUCHSIA)) {
+            isSysmemBackedMemory = true;
+        }
+
         if (extBufferCollectionPtr) {
             auto collection = reinterpret_cast<fuchsia::sysmem::BufferCollectionSyncPtr*>(
                 extBufferCollectionPtr->collection);
@@ -3733,6 +3740,14 @@
         Optional<zx::vmo> vmo;
         bool isSysmemBackedMemory = false;
 
+        const VkExternalMemoryBufferCreateInfo* extBufCiPtr =
+            vk_find_struct<VkExternalMemoryBufferCreateInfo>(pCreateInfo);
+        if (extBufCiPtr &&
+            (extBufCiPtr->handleTypes &
+             VK_EXTERNAL_MEMORY_HANDLE_TYPE_TEMP_ZIRCON_VMO_BIT_FUCHSIA)) {
+            isSysmemBackedMemory = true;
+        }
+
         const auto* extBufferCollectionPtr =
                 vk_find_struct<VkBufferCollectionBufferCreateInfoFUCHSIA>(
                         pCreateInfo);