diff options
Diffstat (limited to 'layers/buffer_validation.cpp')
| -rw-r--r-- | layers/buffer_validation.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/layers/buffer_validation.cpp b/layers/buffer_validation.cpp index a90ba50f..bf897260 100644 --- a/layers/buffer_validation.cpp +++ b/layers/buffer_validation.cpp @@ -2190,6 +2190,14 @@ bool PreCallValidateCreateBuffer(layer_data *device_data, const VkBufferCreateIn "VK_BUFFER_CREATE_SPARSE_BINDING_BIT set. %s", validation_error_map[VALIDATION_ERROR_00666]); } + + if ((pCreateInfo->flags & VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT) && (!GetEnabledFeatures(device_data)->sparseResidencyBuffer)) { + skip |= + log_msg(report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__, + DRAWSTATE_INVALID_FEATURE, "DS", + "vkCreateBuffer(): the sparseResidencyBuffer device feature is disabled: Buffers cannot be created with the " + "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT set."); + } return skip; } |
