Giovanni Mascellani (@giomasce) commented about libs/vkd3d/resource.c:
- if ((vr = VK_CALL(vkInvalidateMappedMemoryRanges(resource->device->vk_device, 1, &vk_range))) < 0)
ERR("Failed to invalidate memory, vr %d.\n", vr);
+}
+static void d3d12_resource_flush(struct d3d12_resource *resource, uint64_t offset, uint64_t size) +{
- const struct vkd3d_vk_device_procs *vk_procs = &resource->device->vk_procs;
- VkMappedMemoryRange vk_range;
- VkResult vr;
- if (d3d12_heap_get_memory_property_flags(resource->heap) & VK_MEMORY_PROPERTY_HOST_COHERENT_BIT)
return;
- d3d12_resource_get_vk_range(resource, offset, size, &vk_range);
- if ((vr = VK_CALL(vkFlushMappedMemoryRanges(resource->device->vk_device, 1, &vk_range))) < 0)
ERR("Failed to invalidate memory, vr %d.\n", vr);
Minor, but we're flushing here, not invalidating.