summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>2017-10-11 17:21:53 +0100
committerLionel Landwerlin <lionel.g.landwerlin@intel.com>2017-10-11 22:29:55 +0100
commitc0a4f56fb9945e36a004bc38852fbb801aae3bd5 (patch)
tree2753ed51596fa24eea9a33c2fb868c811208dac3
parentcf3dd91969bd85f3c18d9f56d9fade70ea425a29 (diff)
anv: bo_cache: allow importing a BO larger than needed
It's not a problem if a BO has been allocated larger than we need it to be. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102940 Fixes: 818b857914 ("anv: Use the BO cache for DeviceMemory allocations") Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Cc: mesa-stable@lists.freedesktop.org
-rw-r--r--src/intel/vulkan/anv_allocator.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/intel/vulkan/anv_allocator.c b/src/intel/vulkan/anv_allocator.c
index be750adeb5..0f123563f7 100644
--- a/src/intel/vulkan/anv_allocator.c
+++ b/src/intel/vulkan/anv_allocator.c
@@ -1302,7 +1302,7 @@ anv_bo_cache_import(struct anv_device *device,
* this sort of attack but only if it can trust the buffer size.
*/
off_t import_size = lseek(fd, 0, SEEK_END);
- if (import_size == (off_t)-1 || import_size != size) {
+ if (import_size == (off_t)-1 || import_size < size) {
anv_gem_close(device, gem_handle);
pthread_mutex_unlock(&cache->mutex);
return vk_error(VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR);