vulkan: memory: Flush non coherent memory after write.
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Wed, 4 Jan 2023 16:30:47 +0000 (17:30 +0100)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Thu, 26 Jan 2023 23:29:06 +0000 (23:29 +0000)
commit791e4c6a8501ebc2d5339e56f41ebb0c14186062
tree0e95e7affbb4e247355762c20988aaada59bcb9c
parent1eae03486e0d94e85fbb8a42c44d1f75b5f35ad9
vulkan: memory: Flush non coherent memory after write.

Spec 7.1.3:

If a memory object does not have the VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
property, then vkFlushMappedMemoryRanges must be called in order to guarantee
that writes to the memory object from the host are made available to the host
domain, where they can be further made available to the device domain via a
domain operation. Similarly, vkInvalidateMappedMemoryRanges must be called to
guarantee that writes which are available to the host domain are made visible to
host operations.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3817>
subprojects/gst-plugins-bad/gst-libs/gst/vulkan/gstvkmemory.c