aboutsummaryrefslogtreecommitdiff
path: root/layers/core_validation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'layers/core_validation.cpp')
-rw-r--r--layers/core_validation.cpp1007
1 files changed, 437 insertions, 570 deletions
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp
index d07fbc3a..0e6040af 100644
--- a/layers/core_validation.cpp
+++ b/layers/core_validation.cpp
@@ -580,18 +580,18 @@ bool VerifyBoundMemoryIsValid(const layer_data *dev_data, VkDeviceMemory mem, ui
const char *type_name, UNIQUE_VALIDATION_ERROR_CODE error_code) {
bool result = false;
if (VK_NULL_HANDLE == mem) {
- result = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT, handle,
- __LINE__, error_code, "MEM",
- "%s: Vk%s object 0x%" PRIx64
- " used with no memory bound. Memory should be bound by calling vkBind%sMemory(). %s",
- api_name, type_name, handle, type_name, validation_error_map[error_code]);
+ result =
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT, handle, __LINE__,
+ error_code, "MEM",
+ "%s: Vk%s object 0x%" PRIx64 " used with no memory bound. Memory should be bound by calling vkBind%sMemory().",
+ api_name, type_name, handle, type_name);
} else if (MEMORY_UNBOUND == mem) {
result = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT, handle,
__LINE__, error_code, "MEM",
"%s: Vk%s object 0x%" PRIx64
" used with no memory bound and previously bound memory was freed. Memory must not be freed prior to this "
- "operation. %s",
- api_name, type_name, handle, validation_error_map[error_code]);
+ "operation.",
+ api_name, type_name, handle);
}
return result;
}
@@ -673,8 +673,8 @@ static bool ValidateSetMemBinding(layer_data *dev_data, VkDeviceMemory mem, uint
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem), __LINE__, error_code, "MEM",
"In %s, attempting to bind memory (0x%" PRIx64 ") to object (0x%" PRIx64
- ") which was created with sparse memory flags (VK_%s_CREATE_SPARSE_*_BIT). %s",
- apiName, HandleToUint64(mem), handle, handle_type, validation_error_map[error_code]);
+ ") which was created with sparse memory flags (VK_%s_CREATE_SPARSE_*_BIT).",
+ apiName, HandleToUint64(mem), handle, handle_type);
}
DEVICE_MEM_INFO *mem_info = GetMemObjInfo(dev_data, mem);
if (mem_info) {
@@ -689,9 +689,8 @@ static bool ValidateSetMemBinding(layer_data *dev_data, VkDeviceMemory mem, uint
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem), __LINE__, error_code, "MEM",
"In %s, attempting to bind memory (0x%" PRIx64 ") to object (0x%" PRIx64
- ") which has already been bound to mem object 0x%" PRIx64 ". %s",
- apiName, HandleToUint64(mem), handle, HandleToUint64(prev_binding->mem),
- validation_error_map[error_code]);
+ ") which has already been bound to mem object 0x%" PRIx64 ".",
+ apiName, HandleToUint64(mem), handle, HandleToUint64(prev_binding->mem));
} else if (mem_binding->binding.mem == MEMORY_UNBOUND) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem), __LINE__, MEMTRACK_REBIND_OBJECT, "MEM",
@@ -735,10 +734,9 @@ static bool SetSparseMemBinding(layer_data *dev_data, MEM_BINDING binding, uint6
static bool validate_status(layer_data *dev_data, GLOBAL_CB_NODE *pNode, CBStatusFlags status_mask, VkFlags msg_flags,
const char *fail_msg, UNIQUE_VALIDATION_ERROR_CODE const msg_code) {
if (!(pNode->status & status_mask)) {
- char const *const message = validation_error_map[msg_code];
return log_msg(dev_data->report_data, msg_flags, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
- HandleToUint64(pNode->commandBuffer), __LINE__, msg_code, "DS",
- "command buffer object 0x%" PRIx64 ": %s. %s.", HandleToUint64(pNode->commandBuffer), fail_msg, message);
+ HandleToUint64(pNode->commandBuffer), __LINE__, msg_code, "DS", "command buffer object 0x%" PRIx64 ": %s..",
+ HandleToUint64(pNode->commandBuffer), fail_msg);
}
return false;
}
@@ -858,9 +856,9 @@ static bool logInvalidAttachmentMessage(layer_data const *dev_data, const char *
return log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
HandleToUint64(rp1_state->renderPass), __LINE__, error_code, "DS",
"%s: RenderPasses incompatible between %s w/ renderPass 0x%" PRIx64 " and %s w/ renderPass 0x%" PRIx64
- " Attachment %u is not compatible with %u: %s. %s",
+ " Attachment %u is not compatible with %u: %s.",
caller, type1_string, HandleToUint64(rp1_state->renderPass), type2_string, HandleToUint64(rp2_state->renderPass),
- primary_attach, secondary_attach, msg, validation_error_map[error_code]);
+ primary_attach, secondary_attach, msg);
}
static bool validateAttachmentCompatibility(layer_data const *dev_data, const char *type1_string,
@@ -966,13 +964,12 @@ static bool validateRenderPassCompatibility(layer_data const *dev_data, const ch
bool skip = false;
if (rp1_state->createInfo.subpassCount != rp2_state->createInfo.subpassCount) {
- skip |=
- log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
- HandleToUint64(rp1_state->renderPass), __LINE__, error_code, "DS",
- "%s: RenderPasses incompatible between %s w/ renderPass 0x%" PRIx64
- " with a subpassCount of %u and %s w/ renderPass 0x%" PRIx64 " with a subpassCount of %u. %s",
- caller, type1_string, HandleToUint64(rp1_state->renderPass), rp1_state->createInfo.subpassCount, type2_string,
- HandleToUint64(rp2_state->renderPass), rp2_state->createInfo.subpassCount, validation_error_map[error_code]);
+ skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
+ HandleToUint64(rp1_state->renderPass), __LINE__, error_code, "DS",
+ "%s: RenderPasses incompatible between %s w/ renderPass 0x%" PRIx64
+ " with a subpassCount of %u and %s w/ renderPass 0x%" PRIx64 " with a subpassCount of %u.",
+ caller, type1_string, HandleToUint64(rp1_state->renderPass), rp1_state->createInfo.subpassCount,
+ type2_string, HandleToUint64(rp2_state->renderPass), rp2_state->createInfo.subpassCount);
} else {
for (uint32_t i = 0; i < rp1_state->createInfo.subpassCount; ++i) {
skip |= validateSubpassCompatibility(dev_data, type1_string, rp1_state, type2_string, rp2_state, i, caller, error_code);
@@ -1156,8 +1153,8 @@ static bool ValidatePipelineDrawtimeState(layer_data const *dev_data, LAST_BOUND
if (pPipeline->graphicsPipelineCI.subpass != pCB->activeSubpass) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, sp_error, "DS",
- "Pipeline was built for subpass %u but used in subpass %u. %s", pPipeline->graphicsPipelineCI.subpass,
- pCB->activeSubpass, validation_error_map[sp_error]);
+ "Pipeline was built for subpass %u but used in subpass %u.", pPipeline->graphicsPipelineCI.subpass,
+ pCB->activeSubpass);
}
}
@@ -1304,11 +1301,9 @@ static bool ValidatePipelineLocked(layer_data *dev_data, std::vector<std::unique
"Invalid Pipeline CreateInfo: exactly one of base pipeline index and handle must be specified");
} else if (pPipeline->graphicsPipelineCI.basePipelineIndex != -1) {
if (pPipeline->graphicsPipelineCI.basePipelineIndex >= pipelineIndex) {
- skip |=
- log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
- HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_208005a0, "DS",
- "Invalid Pipeline CreateInfo: base pipeline must occur earlier in array than derivative pipeline. %s",
- validation_error_map[VALIDATION_ERROR_208005a0]);
+ skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
+ HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_208005a0, "DS",
+ "Invalid Pipeline CreateInfo: base pipeline must occur earlier in array than derivative pipeline.");
} else {
pBasePipeline = pPipelines[pPipeline->graphicsPipelineCI.basePipelineIndex].get();
}
@@ -1340,9 +1335,8 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
if (pPipeline->graphicsPipelineCI.subpass >= pPipeline->rp_state->createInfo.subpassCount) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005ee, "DS",
- "Invalid Pipeline CreateInfo State: Subpass index %u is out of range for this renderpass (0..%u). %s",
- pPipeline->graphicsPipelineCI.subpass, pPipeline->rp_state->createInfo.subpassCount - 1,
- validation_error_map[VALIDATION_ERROR_096005ee]);
+ "Invalid Pipeline CreateInfo State: Subpass index %u is out of range for this renderpass (0..%u).",
+ pPipeline->graphicsPipelineCI.subpass, pPipeline->rp_state->createInfo.subpassCount - 1);
subpass_desc = nullptr;
}
@@ -1353,10 +1347,9 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005d4, "DS",
"vkCreateGraphicsPipelines(): Render pass (0x%" PRIx64
- ") subpass %u has colorAttachmentCount of %u which doesn't match the pColorBlendState->attachmentCount of %u. %s",
+ ") subpass %u has colorAttachmentCount of %u which doesn't match the pColorBlendState->attachmentCount of %u.",
HandleToUint64(pPipeline->rp_state->renderPass), pPipeline->graphicsPipelineCI.subpass,
- subpass_desc->colorAttachmentCount, color_blend_state->attachmentCount,
- validation_error_map[VALIDATION_ERROR_096005d4]);
+ subpass_desc->colorAttachmentCount, color_blend_state->attachmentCount);
}
if (!dev_data->enabled_features.independentBlend) {
if (pPipeline->attachments.size() > 1) {
@@ -1371,8 +1364,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_0f4004ba, "DS",
"Invalid Pipeline CreateInfo: If independent blend feature not enabled, all elements of "
- "pAttachments must be identical. %s",
- validation_error_map[VALIDATION_ERROR_0f4004ba]);
+ "pAttachments must be identical.");
break;
}
}
@@ -1382,8 +1374,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
skip |=
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_0f4004bc, "DS",
- "Invalid Pipeline CreateInfo: If logic operations feature not enabled, logicOpEnable must be VK_FALSE. %s",
- validation_error_map[VALIDATION_ERROR_0f4004bc]);
+ "Invalid Pipeline CreateInfo: If logic operations feature not enabled, logicOpEnable must be VK_FALSE.");
}
}
@@ -1405,8 +1396,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
if (!(pPipeline->active_shaders & VK_SHADER_STAGE_VERTEX_BIT)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005ae, "DS",
- "Invalid Pipeline CreateInfo State: Vertex Shader required. %s",
- validation_error_map[VALIDATION_ERROR_096005ae]);
+ "Invalid Pipeline CreateInfo State: Vertex Shader required.");
}
// Either both or neither TC/TE shaders should be defined
bool has_control = (pPipeline->active_shaders & VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT) != 0;
@@ -1414,21 +1404,18 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
if (has_control && !has_eval) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005b2, "DS",
- "Invalid Pipeline CreateInfo State: TE and TC shaders must be included or excluded as a pair. %s",
- validation_error_map[VALIDATION_ERROR_096005b2]);
+ "Invalid Pipeline CreateInfo State: TE and TC shaders must be included or excluded as a pair.");
}
if (!has_control && has_eval) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005b4, "DS",
- "Invalid Pipeline CreateInfo State: TE and TC shaders must be included or excluded as a pair. %s",
- validation_error_map[VALIDATION_ERROR_096005b4]);
+ "Invalid Pipeline CreateInfo State: TE and TC shaders must be included or excluded as a pair.");
}
// Compute shaders should be specified independent of Gfx shaders
if (pPipeline->active_shaders & VK_SHADER_STAGE_COMPUTE_BIT) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005b0, "DS",
- "Invalid Pipeline CreateInfo State: Do not specify Compute Shader for Gfx Pipeline. %s",
- validation_error_map[VALIDATION_ERROR_096005b0]);
+ "Invalid Pipeline CreateInfo State: Do not specify Compute Shader for Gfx Pipeline.");
}
// VK_PRIMITIVE_TOPOLOGY_PATCH_LIST primitive topology is only valid for tessellation pipelines.
// Mismatching primitive topology and tessellation fails graphics pipeline creation.
@@ -1438,8 +1425,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005c0, "DS",
"Invalid Pipeline CreateInfo State: VK_PRIMITIVE_TOPOLOGY_PATCH_LIST must be set as IA topology for "
- "tessellation pipelines. %s",
- validation_error_map[VALIDATION_ERROR_096005c0]);
+ "tessellation pipelines.");
}
if (pPipeline->graphicsPipelineCI.pInputAssemblyState &&
pPipeline->graphicsPipelineCI.pInputAssemblyState->topology == VK_PRIMITIVE_TOPOLOGY_PATCH_LIST) {
@@ -1447,8 +1433,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005c2, "DS",
"Invalid Pipeline CreateInfo State: VK_PRIMITIVE_TOPOLOGY_PATCH_LIST primitive topology is only valid "
- "for tessellation pipelines. %s",
- validation_error_map[VALIDATION_ERROR_096005c2]);
+ "for tessellation pipelines.");
}
}
@@ -1459,8 +1444,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_1020061c, "DS",
"vkCreateGraphicsPipelines(): the depthClamp device feature is disabled: the depthClampEnable member "
- "of the VkPipelineRasterizationStateCreateInfo structure must be set to VK_FALSE. %s",
- validation_error_map[VALIDATION_ERROR_1020061c]);
+ "of the VkPipelineRasterizationStateCreateInfo structure must be set to VK_FALSE.");
}
if (!isDynamic(pPipeline, VK_DYNAMIC_STATE_DEPTH_BIAS) &&
@@ -1480,8 +1464,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_10000622, "DS",
"vkCreateGraphicsPipelines(): the alphaToOne device feature is disabled: the alphaToOneEnable "
- "member of the VkPipelineMultisampleStateCreateInfo structure must be set to VK_FALSE. %s",
- validation_error_map[VALIDATION_ERROR_10000622]);
+ "member of the VkPipelineMultisampleStateCreateInfo structure must be set to VK_FALSE.");
}
// If subpass uses a depth/stencil attachment, pDepthStencilState must be a pointer to a valid structure
@@ -1491,8 +1474,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005e0, "DS",
"Invalid Pipeline CreateInfo State: pDepthStencilState is NULL when rasterization is enabled "
- "and subpass uses a depth/stencil attachment. %s",
- validation_error_map[VALIDATION_ERROR_096005e0]);
+ "and subpass uses a depth/stencil attachment.");
} else if ((pPipeline->graphicsPipelineCI.pDepthStencilState->depthBoundsTestEnable == VK_TRUE) &&
(!dev_data->enabled_features.depthBounds)) {
@@ -1500,8 +1482,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_0f6004ac, "DS",
"vkCreateGraphicsPipelines(): the depthBounds device feature is disabled: the "
"depthBoundsTestEnable member of the VkPipelineDepthStencilStateCreateInfo structure must be "
- "set to VK_FALSE. %s",
- validation_error_map[VALIDATION_ERROR_0f6004ac]);
+ "set to VK_FALSE.");
}
}
@@ -1517,8 +1498,7 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_096005e2, "DS",
"Invalid Pipeline CreateInfo State: pColorBlendState is NULL when rasterization is enabled and "
- "subpass uses color attachments. %s",
- validation_error_map[VALIDATION_ERROR_096005e2]);
+ "subpass uses color attachments.");
}
}
}
@@ -1537,8 +1517,8 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_14a004de, "IMAGE",
"vkCreateGraphicsPipelines: pCreateInfo[%d].pVertexInputState->vertexAttributeDescriptions[%d].format "
- "(%s) is not a supported vertex buffer format. %s",
- pipelineIndex, j, string_VkFormat(format), validation_error_map[VALIDATION_ERROR_14a004de]);
+ "(%s) is not a supported vertex buffer format.",
+ pipelineIndex, j, string_VkFormat(format));
}
}
}
@@ -1561,11 +1541,10 @@ static bool ValidatePipelineUnlocked(layer_data *dev_data, std::vector<std::uniq
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT,
HandleToUint64(pPipeline->pipeline), __LINE__, VALIDATION_ERROR_09600bc2, "DS",
"vkCreateGraphicsPipelines: pCreateInfo[%d].pMultisampleState->rasterizationSamples (%s) != max "
- "attachment samples (%s) used in subpass %u. %s",
+ "attachment samples (%s) used in subpass %u.",
pipelineIndex,
string_VkSampleCountFlagBits(pPipeline->graphicsPipelineCI.pMultisampleState->rasterizationSamples),
- string_VkSampleCountFlagBits(max_sample_count), pPipeline->graphicsPipelineCI.subpass,
- validation_error_map[VALIDATION_ERROR_09600bc2]);
+ string_VkSampleCountFlagBits(max_sample_count), pPipeline->graphicsPipelineCI.subpass);
}
}
@@ -1601,8 +1580,8 @@ static bool validateIdleDescriptorSet(const layer_data *dev_data, VkDescriptorSe
if (set_node->second->in_use.load()) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT,
HandleToUint64(set), __LINE__, VALIDATION_ERROR_2860026a, "DS",
- "Cannot call %s() on descriptor set 0x%" PRIx64 " that is in use by a command buffer. %s",
- func_str.c_str(), HandleToUint64(set), validation_error_map[VALIDATION_ERROR_2860026a]);
+ "Cannot call %s() on descriptor set 0x%" PRIx64 " that is in use by a command buffer.",
+ func_str.c_str(), HandleToUint64(set));
}
}
return skip;
@@ -1686,8 +1665,8 @@ bool ValidateCmdQueueFlags(layer_data *dev_data, const GLOBAL_CB_NODE *cb_node,
}
return log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_node->commandBuffer), __LINE__, error_code, "DS",
- "Cannot call %s on a command buffer allocated from a pool without %s capabilities. %s.", caller_name,
- required_flags_string.c_str(), validation_error_map[error_code]);
+ "Cannot call %s on a command buffer allocated from a pool without %s capabilities..", caller_name,
+ required_flags_string.c_str());
}
}
return false;
@@ -1800,8 +1779,7 @@ bool ValidateCmd(layer_data *dev_data, const GLOBAL_CB_NODE *cb_state, const CMD
const auto error = error_it->second;
return log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, error, "DS",
- "You must call vkBeginCommandBuffer() before this call to %s. %s", caller_name,
- validation_error_map[error]);
+ "You must call vkBeginCommandBuffer() before this call to %s.", caller_name);
}
}
@@ -2010,8 +1988,8 @@ bool insideRenderPass(const layer_data *dev_data, const GLOBAL_CB_NODE *pCB, con
if (pCB->activeRenderPass) {
inside = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(pCB->commandBuffer), __LINE__, msgCode, "DS",
- "%s: It is invalid to issue this call inside an active render pass (0x%" PRIx64 "). %s", apiName,
- HandleToUint64(pCB->activeRenderPass->renderPass), validation_error_map[msgCode]);
+ "%s: It is invalid to issue this call inside an active render pass (0x%" PRIx64 ").", apiName,
+ HandleToUint64(pCB->activeRenderPass->renderPass));
}
return inside;
}
@@ -2025,7 +2003,7 @@ bool outsideRenderPass(const layer_data *dev_data, GLOBAL_CB_NODE *pCB, const ch
!(pCB->beginInfo.flags & VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT))) {
outside = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(pCB->commandBuffer), __LINE__, msgCode, "DS",
- "%s: This call must be issued inside an active render pass. %s", apiName, validation_error_map[msgCode]);
+ "%s: This call must be issued inside an active render pass.", apiName);
}
return outside;
}
@@ -2116,11 +2094,9 @@ VKAPI_ATTR void VKAPI_CALL DestroyInstance(VkInstance instance, const VkAllocati
static bool ValidatePhysicalDeviceQueueFamily(instance_layer_data *instance_data, const PHYSICAL_DEVICE_STATE *pd_state,
uint32_t requested_queue_family, int32_t err_code, const char *cmd_name,
- const char *queue_family_var_name, const char *vu_note = nullptr) {
+ const char *queue_family_var_name) {
bool skip = false;
- if (!vu_note) vu_note = validation_error_map[err_code];
-
const char *conditional_ext_cmd = instance_data->extensions.vk_khr_get_physical_device_properties_2
? "or vkGetPhysicalDeviceQueueFamilyProperties2[KHR]"
: "";
@@ -2134,8 +2110,8 @@ static bool ValidatePhysicalDeviceQueueFamily(instance_layer_data *instance_data
HandleToUint64(pd_state->phys_device), __LINE__, err_code, "DL",
"%s: %s (= %" PRIu32
") is not less than any previously obtained pQueueFamilyPropertyCount from "
- "vkGetPhysicalDeviceQueueFamilyProperties%s (%s). %s",
- cmd_name, queue_family_var_name, requested_queue_family, conditional_ext_cmd, count_note.c_str(), vu_note);
+ "vkGetPhysicalDeviceQueueFamilyProperties%s (%s).",
+ cmd_name, queue_family_var_name, requested_queue_family, conditional_ext_cmd, count_note.c_str());
}
return skip;
}
@@ -2174,10 +2150,8 @@ static bool ValidateDeviceQueueCreateInfos(instance_layer_data *instance_data, c
HandleToUint64(pd_state->phys_device), __LINE__, VALIDATION_ERROR_06c002fc, "DL",
"vkCreateDevice: pCreateInfo->pQueueCreateInfos[%" PRIu32 "].queueCount (=%" PRIu32
") is not less than or equal to available queue count for this pCreateInfo->pQueueCreateInfos[%" PRIu32
- "].queueFamilyIndex} (=%" PRIu32
- ") obtained previously from vkGetPhysicalDeviceQueueFamilyProperties%s (%s). %s",
- i, requested_queue_count, i, requested_queue_family, conditional_ext_cmd, count_note.c_str(),
- validation_error_map[VALIDATION_ERROR_06c002fc]);
+ "].queueFamilyIndex} (=%" PRIu32 ") obtained previously from vkGetPhysicalDeviceQueueFamilyProperties%s (%s).",
+ i, requested_queue_count, i, requested_queue_family, conditional_ext_cmd, count_note.c_str());
}
}
}
@@ -2370,8 +2344,8 @@ static bool ValidateStageMaskGsTsEnables(layer_data *dev_data, VkPipelineStageFl
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
geo_error_id, "DL",
"%s call includes a stageMask with VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT bit set when device does not have "
- "geometryShader feature enabled. %s",
- caller, validation_error_map[geo_error_id]);
+ "geometryShader feature enabled.",
+ caller);
}
if (!dev_data->enabled_features.tessellationShader &&
(stageMask & (VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT | VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT))) {
@@ -2379,8 +2353,8 @@ static bool ValidateStageMaskGsTsEnables(layer_data *dev_data, VkPipelineStageFl
tess_error_id, "DL",
"%s call includes a stageMask with VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT and/or "
"VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT bit(s) set when device does not have "
- "tessellationShader feature enabled. %s",
- caller, validation_error_map[tess_error_id]);
+ "tessellationShader feature enabled.",
+ caller);
}
return skip;
}
@@ -2593,8 +2567,8 @@ static bool validateCommandBufferSimultaneousUse(layer_data *dev_data, GLOBAL_CB
!(pCB->beginInfo.flags & VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, 0,
__LINE__, VALIDATION_ERROR_31a0008e, "DS",
- "Command Buffer 0x%" PRIx64 " is already in use and is not marked for simultaneous use. %s",
- HandleToUint64(pCB->commandBuffer), validation_error_map[VALIDATION_ERROR_31a0008e]);
+ "Command Buffer 0x%" PRIx64 " is already in use and is not marked for simultaneous use.",
+ HandleToUint64(pCB->commandBuffer));
}
return skip;
}
@@ -2624,8 +2598,8 @@ static bool validateCommandBufferState(layer_data *dev_data, GLOBAL_CB_NODE *cb_
case CB_NEW:
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
(uint64_t)(cb_state->commandBuffer), __LINE__, vu_id, "DS",
- "Command buffer 0x%" PRIx64 " used in the call to %s is unrecorded and contains no commands. %s",
- HandleToUint64(cb_state->commandBuffer), call_source, validation_error_map[vu_id]);
+ "Command buffer 0x%" PRIx64 " used in the call to %s is unrecorded and contains no commands.",
+ HandleToUint64(cb_state->commandBuffer), call_source);
break;
case CB_RECORDING:
@@ -2698,9 +2672,9 @@ static bool validateQueueFamilyIndices(layer_data *dev_data, GLOBAL_CB_NODE *pCB
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(pCB->commandBuffer), __LINE__, VALIDATION_ERROR_31a00094, "DS",
"vkQueueSubmit: Primary command buffer 0x%" PRIx64
- " created in queue family %d is being submitted on queue 0x%" PRIx64 " from queue family %d. %s",
+ " created in queue family %d is being submitted on queue 0x%" PRIx64 " from queue family %d.",
HandleToUint64(pCB->commandBuffer), pPool->queueFamilyIndex, HandleToUint64(queue),
- queue_state->queueFamilyIndex, validation_error_map[VALIDATION_ERROR_31a00094]);
+ queue_state->queueFamilyIndex);
}
// Ensure that any bound images or buffers created with SHARING_MODE_CONCURRENT have access to the current queue family
@@ -2743,9 +2717,9 @@ static bool validatePrimaryCommandBufferState(layer_data *dev_data, GLOBAL_CB_NO
__LINE__, VALIDATION_ERROR_31a00092, "DS",
"Commandbuffer 0x%" PRIx64 " was submitted with secondary buffer 0x%" PRIx64
" but that buffer has subsequently been bound to primary cmd buffer 0x%" PRIx64
- " and it does not have VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT set. %s",
+ " and it does not have VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT set.",
HandleToUint64(pCB->commandBuffer), HandleToUint64(pSubCB->commandBuffer),
- HandleToUint64(pSubCB->primaryCommandBuffer), validation_error_map[VALIDATION_ERROR_31a00092]);
+ HandleToUint64(pSubCB->primaryCommandBuffer));
}
}
@@ -3022,10 +2996,10 @@ bool ValidateObjectNotInUse(const layer_data *dev_data, BASE_NODE *obj_node, VK_
if (dev_data->instance_data->disabled.object_in_use) return false;
bool skip = false;
if (obj_node->in_use.load()) {
- skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, get_debug_report_enum[obj_struct.type],
- obj_struct.handle, __LINE__, error_code, "DS",
- "Cannot call %s on %s 0x%" PRIx64 " that is currently in use by a command buffer. %s", caller_name,
- object_string[obj_struct.type], obj_struct.handle, validation_error_map[error_code]);
+ skip |=
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, get_debug_report_enum[obj_struct.type], obj_struct.handle,
+ __LINE__, error_code, "DS", "Cannot call %s on %s 0x%" PRIx64 " that is currently in use by a command buffer.",
+ caller_name, object_string[obj_struct.type], obj_struct.handle);
}
return skip;
}
@@ -3121,9 +3095,8 @@ static bool ValidateMapMemRange(layer_data *dev_data, VkDeviceMemory mem, VkDevi
if ((offset + size) > mem_info->alloc_info.allocationSize) {
skip = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem), __LINE__, VALIDATION_ERROR_31200552, "MEM",
- "Mapping Memory from 0x%" PRIx64 " to 0x%" PRIx64 " oversteps total array size 0x%" PRIx64 ". %s",
- offset, size + offset, mem_info->alloc_info.allocationSize,
- validation_error_map[VALIDATION_ERROR_31200552]);
+ "Mapping Memory from 0x%" PRIx64 " to 0x%" PRIx64 " oversteps total array size 0x%" PRIx64 ".",
+ offset, size + offset, mem_info->alloc_info.allocationSize);
}
}
}
@@ -3146,8 +3119,7 @@ static bool deleteMemRanges(layer_data *dev_data, VkDeviceMemory mem) {
// Valid Usage: memory must currently be mapped
skip = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem), __LINE__, VALIDATION_ERROR_33600562, "MEM",
- "Unmapping Memory without memory being mapped: mem obj 0x%" PRIx64 ". %s", HandleToUint64(mem),
- validation_error_map[VALIDATION_ERROR_33600562]);
+ "Unmapping Memory without memory being mapped: mem obj 0x%" PRIx64 ".", HandleToUint64(mem));
}
mem_info->mem_range.size = 0;
if (mem_info->shadow_copy) {
@@ -3389,8 +3361,8 @@ static bool PreCallValidateDestroyFence(layer_data *dev_data, VkFence fence, FEN
if (*fence_node) {
if ((*fence_node)->scope == kSyncScopeInternal && (*fence_node)->state == FENCE_INFLIGHT) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT,
- HandleToUint64(fence), __LINE__, VALIDATION_ERROR_24e008c0, "DS", "Fence 0x%" PRIx64 " is in use. %s",
- HandleToUint64(fence), validation_error_map[VALIDATION_ERROR_24e008c0]);
+ HandleToUint64(fence), __LINE__, VALIDATION_ERROR_24e008c0, "DS", "Fence 0x%" PRIx64 " is in use.",
+ HandleToUint64(fence));
}
}
return skip;
@@ -3514,12 +3486,12 @@ static bool PreCallValidateGetQueryPoolResults(layer_data *dev_data, VkQueryPool
auto query_pool_state = dev_data->queryPoolMap.find(query_pool);
if (query_pool_state != dev_data->queryPoolMap.end()) {
if ((query_pool_state->second.createInfo.queryType == VK_QUERY_TYPE_TIMESTAMP) && (flags & VK_QUERY_RESULT_PARTIAL_BIT)) {
- skip |= log_msg(
- dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT, 0, __LINE__,
- VALIDATION_ERROR_2fa00664, "DS",
- "QueryPool 0x%" PRIx64
- " was created with a queryType of VK_QUERY_TYPE_TIMESTAMP but flags contains VK_QUERY_RESULT_PARTIAL_BIT. %s",
- HandleToUint64(query_pool), validation_error_map[VALIDATION_ERROR_2fa00664]);
+ skip |=
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT, 0,
+ __LINE__, VALIDATION_ERROR_2fa00664, "DS",
+ "QueryPool 0x%" PRIx64
+ " was created with a queryType of VK_QUERY_TYPE_TIMESTAMP but flags contains VK_QUERY_RESULT_PARTIAL_BIT.",
+ HandleToUint64(query_pool));
}
}
@@ -3707,9 +3679,9 @@ static bool ValidateInsertMemoryRange(layer_data const *dev_data, uint64_t handl
skip = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem_info->mem), __LINE__, error_code, "MEM",
"In %s, attempting to bind memory (0x%" PRIx64 ") to object (0x%" PRIx64 "), memoryOffset=0x%" PRIxLEAST64
- " must be less than the memory allocation size 0x%" PRIxLEAST64 ". %s",
+ " must be less than the memory allocation size 0x%" PRIxLEAST64 ".",
api_name, HandleToUint64(mem_info->mem), HandleToUint64(handle), memoryOffset,
- mem_info->alloc_info.allocationSize, validation_error_map[error_code]);
+ mem_info->alloc_info.allocationSize);
}
return skip;
@@ -3855,9 +3827,8 @@ static bool ValidateMemoryTypes(const layer_data *dev_data, const DEVICE_MEM_INF
skip = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem_info->mem), __LINE__, msgCode, "MT",
"%s(): MemoryRequirements->memoryTypeBits (0x%X) for this object type are not compatible with the memory "
- "type (0x%X) of this memory object 0x%" PRIx64 ". %s",
- funcName, memory_type_bits, mem_info->alloc_info.memoryTypeIndex, HandleToUint64(mem_info->mem),
- validation_error_map[msgCode]);
+ "type (0x%X) of this memory object 0x%" PRIx64 ".",
+ funcName, memory_type_bits, mem_info->alloc_info.memoryTypeIndex, HandleToUint64(mem_info->mem));
}
return skip;
}
@@ -3899,9 +3870,8 @@ static bool PreCallValidateBindBufferMemory(layer_data *dev_data, VkBuffer buffe
buffer_handle, __LINE__, VALIDATION_ERROR_17000818, "DS",
"%s: memoryOffset is 0x%" PRIxLEAST64
" but must be an integer multiple of the VkMemoryRequirements::alignment value 0x%" PRIxLEAST64
- ", returned from a call to vkGetBufferMemoryRequirements with buffer. %s",
- api_name, memoryOffset, buffer_state->requirements.alignment,
- validation_error_map[VALIDATION_ERROR_17000818]);
+ ", returned from a call to vkGetBufferMemoryRequirements with buffer.",
+ api_name, memoryOffset, buffer_state->requirements.alignment);
}
if (mem_info) {
@@ -3911,27 +3881,24 @@ static bool PreCallValidateBindBufferMemory(layer_data *dev_data, VkBuffer buffe
buffer_handle, __LINE__, VALIDATION_ERROR_1700081a, "DS",
"%s: memory size minus memoryOffset is 0x%" PRIxLEAST64
" but must be at least as large as VkMemoryRequirements::size value 0x%" PRIxLEAST64
- ", returned from a call to vkGetBufferMemoryRequirements with buffer. %s",
- api_name, mem_info->alloc_info.allocationSize - memoryOffset, buffer_state->requirements.size,
- validation_error_map[VALIDATION_ERROR_1700081a]);
+ ", returned from a call to vkGetBufferMemoryRequirements with buffer.",
+ api_name, mem_info->alloc_info.allocationSize - memoryOffset, buffer_state->requirements.size);
}
// Validate dedicated allocation
if (mem_info->is_dedicated && ((mem_info->dedicated_buffer != buffer) || (memoryOffset != 0))) {
// TODO: Add vkBindBufferMemory2KHR error message when added to spec.
auto validation_error = VALIDATION_ERROR_UNDEFINED;
- const char *validation_error_msg = "";
if (strcmp(api_name, "vkBindBufferMemory()") == 0) {
validation_error = VALIDATION_ERROR_17000bc8;
- validation_error_msg = validation_error_map[validation_error];
}
- skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT,
- buffer_handle, __LINE__, validation_error, "DS",
- "%s: for dedicated memory allocation 0x%" PRIxLEAST64
- ", VkMemoryDedicatedAllocateInfoKHR::buffer 0x%" PRIXLEAST64
- " must be equal to buffer 0x%" PRIxLEAST64 " and memoryOffset 0x%" PRIxLEAST64 " must be zero. %s",
- api_name, HandleToUint64(mem), HandleToUint64(mem_info->dedicated_buffer), buffer_handle,
- memoryOffset, validation_error_msg);
+ skip |=
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT,
+ buffer_handle, __LINE__, validation_error, "DS",
+ "%s: for dedicated memory allocation 0x%" PRIxLEAST64
+ ", VkMemoryDedicatedAllocateInfoKHR::buffer 0x%" PRIXLEAST64 " must be equal to buffer 0x%" PRIxLEAST64
+ " and memoryOffset 0x%" PRIxLEAST64 " must be zero.",
+ api_name, HandleToUint64(mem), HandleToUint64(mem_info->dedicated_buffer), buffer_handle, memoryOffset);
}
}
@@ -3962,9 +3929,8 @@ static bool PreCallValidateBindBufferMemory(layer_data *dev_data, VkBuffer buffe
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT,
buffer_handle, __LINE__, msgCode[i], "DS",
"%s: %s memoryOffset is 0x%" PRIxLEAST64
- " but must be a multiple of device limit %s 0x%" PRIxLEAST64 ". %s",
- api_name, memory_type[i], memoryOffset, offset_name[i], offset_requirement[i],
- validation_error_map[msgCode[i]]);
+ " but must be a multiple of device limit %s 0x%" PRIxLEAST64 ".",
+ api_name, memory_type[i], memoryOffset, offset_name[i], offset_requirement[i]);
}
}
}
@@ -4392,8 +4358,8 @@ static bool checkCommandBufferInFlight(layer_data *dev_data, const GLOBAL_CB_NOD
if (cb_node->in_use.load()) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_node->commandBuffer), __LINE__, error_code, "DS",
- "Attempt to %s command buffer (0x%" PRIx64 ") which is in use. %s", action,
- HandleToUint64(cb_node->commandBuffer), validation_error_map[error_code]);
+ "Attempt to %s command buffer (0x%" PRIx64 ") which is in use.", action,
+ HandleToUint64(cb_node->commandBuffer));
}
return skip;
}
@@ -4472,8 +4438,7 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateQueryPool(VkDevice device, const VkQueryPoo
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT, 0,
__LINE__, VALIDATION_ERROR_11c0062e, "DS",
"Query pool with type VK_QUERY_TYPE_PIPELINE_STATISTICS created on a device with "
- "VkDeviceCreateInfo.pEnabledFeatures.pipelineStatisticsQuery == VK_FALSE. %s",
- validation_error_map[VALIDATION_ERROR_11c0062e]);
+ "VkDeviceCreateInfo.pEnabledFeatures.pipelineStatisticsQuery == VK_FALSE.");
}
}
@@ -4555,10 +4520,9 @@ VKAPI_ATTR VkResult VKAPI_CALL ResetFences(VkDevice device, uint32_t fenceCount,
for (uint32_t i = 0; i < fenceCount; ++i) {
auto pFence = GetFenceNode(dev_data, pFences[i]);
if (pFence && pFence->scope == kSyncScopeInternal && pFence->state == FENCE_INFLIGHT) {
- skip |=
- log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT,
- HandleToUint64(pFences[i]), __LINE__, VALIDATION_ERROR_32e008c6, "DS", "Fence 0x%" PRIx64 " is in use. %s",
- HandleToUint64(pFences[i]), validation_error_map[VALIDATION_ERROR_32e008c6]);
+ skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT,
+ HandleToUint64(pFences[i]), __LINE__, VALIDATION_ERROR_32e008c6, "DS", "Fence 0x%" PRIx64 " is in use.",
+ HandleToUint64(pFences[i]));
}
}
lock.unlock();
@@ -4875,8 +4839,8 @@ VKAPI_ATTR VkResult VKAPI_CALL MergeValidationCachesEXT(VkDevice device, VkValid
if (src[i] == dst) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT,
0, __LINE__, VALIDATION_ERROR_3e600c00, "DS",
- "vkMergeValidationCachesEXT: dstCache (0x%" PRIx64 ") must not appear in pSrcCaches array. %s",
- HandleToUint64(dstCache), validation_error_map[VALIDATION_ERROR_3e600c00]);
+ "vkMergeValidationCachesEXT: dstCache (0x%" PRIx64 ") must not appear in pSrcCaches array.",
+ HandleToUint64(dstCache));
result = VK_ERROR_VALIDATION_FAILED_EXT;
}
if (!skip) {
@@ -5084,32 +5048,30 @@ static bool validatePushConstantRange(const layer_data *dev_data, const uint32_t
skip |= log_msg(
dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_11a0024c, "DS",
- "%s call has push constants index %u with offset %u that exceeds this device's maxPushConstantSize of %u. %s",
- caller_name, index, offset, maxPushConstantsSize, validation_error_map[VALIDATION_ERROR_11a0024c]);
+ "%s call has push constants index %u with offset %u that exceeds this device's maxPushConstantSize of %u.",
+ caller_name, index, offset, maxPushConstantsSize);
}
if (size > maxPushConstantsSize - offset) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_11a00254, "DS",
"%s call has push constants index %u with offset %u and size %u that exceeds this device's "
- "maxPushConstantSize of %u. %s",
- caller_name, index, offset, size, maxPushConstantsSize,
- validation_error_map[VALIDATION_ERROR_11a00254]);
+ "maxPushConstantSize of %u.",
+ caller_name, index, offset, size, maxPushConstantsSize);
}
} else if (0 == strcmp(caller_name, "vkCmdPushConstants()")) {
if (offset >= maxPushConstantsSize) {
skip |= log_msg(
dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_1bc002e4, "DS",
- "%s call has push constants index %u with offset %u that exceeds this device's maxPushConstantSize of %u. %s",
- caller_name, index, offset, maxPushConstantsSize, validation_error_map[VALIDATION_ERROR_1bc002e4]);
+ "%s call has push constants index %u with offset %u that exceeds this device's maxPushConstantSize of %u.",
+ caller_name, index, offset, maxPushConstantsSize);
}
if (size > maxPushConstantsSize - offset) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_1bc002e6, "DS",
"%s call has push constants index %u with offset %u and size %u that exceeds this device's "
- "maxPushConstantSize of %u. %s",
- caller_name, index, offset, size, maxPushConstantsSize,
- validation_error_map[VALIDATION_ERROR_1bc002e6]);
+ "maxPushConstantSize of %u.",
+ caller_name, index, offset, size, maxPushConstantsSize);
}
} else {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
@@ -5122,27 +5084,27 @@ static bool validatePushConstantRange(const layer_data *dev_data, const uint32_t
if (size == 0) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_11a00250, "DS",
- "%s call has push constants index %u with size %u. Size must be greater than zero. %s", caller_name,
- index, size, validation_error_map[VALIDATION_ERROR_11a00250]);
+ "%s call has push constants index %u with size %u. Size must be greater than zero.", caller_name,
+ index, size);
}
if (size & 0x3) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_11a00252, "DS",
- "%s call has push constants index %u with size %u. Size must be a multiple of 4. %s", caller_name,
- index, size, validation_error_map[VALIDATION_ERROR_11a00252]);
+ "%s call has push constants index %u with size %u. Size must be a multiple of 4.", caller_name,
+ index, size);
}
} else if (0 == strcmp(caller_name, "vkCmdPushConstants()")) {
if (size == 0) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_1bc2c21b, "DS",
- "%s call has push constants index %u with size %u. Size must be greater than zero. %s", caller_name,
- index, size, validation_error_map[VALIDATION_ERROR_1bc2c21b]);
+ "%s call has push constants index %u with size %u. Size must be greater than zero.", caller_name,
+ index, size);
}
if (size & 0x3) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_1bc002e2, "DS",
- "%s call has push constants index %u with size %u. Size must be a multiple of 4. %s", caller_name,
- index, size, validation_error_map[VALIDATION_ERROR_1bc002e2]);
+ "%s call has push constants index %u with size %u. Size must be a multiple of 4.", caller_name,
+ index, size);
}
} else {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
@@ -5154,13 +5116,12 @@ static bool validatePushConstantRange(const layer_data *dev_data, const uint32_t
if (0 == strcmp(caller_name, "vkCreatePipelineLayout()")) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_11a0024e, "DS",
- "%s call has push constants index %u with offset %u. Offset must be a multiple of 4. %s", caller_name,
- index, offset, validation_error_map[VALIDATION_ERROR_11a0024e]);
+ "%s call has push constants index %u with offset %u. Offset must be a multiple of 4.", caller_name,
+ index, offset);
} else if (0 == strcmp(caller_name, "vkCmdPushConstants()")) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_1bc002e0, "DS",
- "%s call has push constants with offset %u. Offset must be a multiple of 4. %s", caller_name, offset,
- validation_error_map[VALIDATION_ERROR_1bc002e0]);
+ "%s call has push constants with offset %u. Offset must be a multiple of 4.", caller_name, offset);
} else {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, DRAWSTATE_INTERNAL_ERROR, "DS", "%s caller not supported.", caller_name);
@@ -5266,12 +5227,10 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
// Validate layout count against device physical limit
if (pCreateInfo->setLayoutCount > dev_data->phys_dev_props.limits.maxBoundDescriptorSets) {
- skip |=
- log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
- VALIDATION_ERROR_0fe0023c, "DS",
- "vkCreatePipelineLayout(): setLayoutCount (%d) exceeds physical device maxBoundDescriptorSets limit (%d). %s",
- pCreateInfo->setLayoutCount, dev_data->phys_dev_props.limits.maxBoundDescriptorSets,
- validation_error_map[VALIDATION_ERROR_0fe0023c]);
+ skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
+ VALIDATION_ERROR_0fe0023c, "DS",
+ "vkCreatePipelineLayout(): setLayoutCount (%d) exceeds physical device maxBoundDescriptorSets limit (%d).",
+ pCreateInfo->setLayoutCount, dev_data->phys_dev_props.limits.maxBoundDescriptorSets);
}
// Validate Push Constant ranges
@@ -5281,8 +5240,7 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
pCreateInfo->pPushConstantRanges[i].size, "vkCreatePipelineLayout()", i);
if (0 == pCreateInfo->pPushConstantRanges[i].stageFlags) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
- __LINE__, VALIDATION_ERROR_11a2dc03, "DS", "vkCreatePipelineLayout() call has no stageFlags set. %s",
- validation_error_map[VALIDATION_ERROR_11a2dc03]);
+ __LINE__, VALIDATION_ERROR_11a2dc03, "DS", "vkCreatePipelineLayout() call has no stageFlags set.");
}
}
@@ -5292,8 +5250,7 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
if (0 != (pCreateInfo->pPushConstantRanges[i].stageFlags & pCreateInfo->pPushConstantRanges[j].stageFlags)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_0fe00248, "DS",
- "vkCreatePipelineLayout() Duplicate stage flags found in ranges %d and %d. %s", i, j,
- validation_error_map[VALIDATION_ERROR_0fe00248]);
+ "vkCreatePipelineLayout() Duplicate stage flags found in ranges %d and %d.", i, j);
}
}
}
@@ -5313,20 +5270,19 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
if (push_descriptor_set_count > 1) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
- VALIDATION_ERROR_0fe0024a, "DS", "vkCreatePipelineLayout() Multiple push descriptor sets found. %s",
- validation_error_map[VALIDATION_ERROR_0fe0024a]);
+ VALIDATION_ERROR_0fe0024a, "DS", "vkCreatePipelineLayout() Multiple push descriptor sets found.");
}
// Max descriptors by type, within a single pipeline stage
std::valarray<uint32_t> max_descriptors_per_stage = GetDescriptorCountMaxPerStage(dev_data, set_layouts);
// Samplers
if (max_descriptors_per_stage[DSL_TYPE_SAMPLERS] > dev_data->phys_dev_props.limits.maxPerStageDescriptorSamplers) {
- skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
- VALIDATION_ERROR_0fe0023e, "DS",
- "vkCreatePipelineLayout(): max per-stage sampler bindings count (%d) exceeds device "
- "maxPerStageDescriptorSamplers limit (%d). %s",
- max_descriptors_per_stage[DSL_TYPE_SAMPLERS], dev_data->phys_dev_props.limits.maxPerStageDescriptorSamplers,
- validation_error_map[VALIDATION_ERROR_0fe0023e]);
+ skip |=
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
+ VALIDATION_ERROR_0fe0023e, "DS",
+ "vkCreatePipelineLayout(): max per-stage sampler bindings count (%d) exceeds device "
+ "maxPerStageDescriptorSamplers limit (%d).",
+ max_descriptors_per_stage[DSL_TYPE_SAMPLERS], dev_data->phys_dev_props.limits.maxPerStageDescriptorSamplers);
}
// Uniform buffers
@@ -5334,10 +5290,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00240, "DS",
"vkCreatePipelineLayout(): max per-stage uniform buffer bindings count (%d) exceeds device "
- "maxPerStageDescriptorUniformBuffers limit (%d). %s",
+ "maxPerStageDescriptorUniformBuffers limit (%d).",
max_descriptors_per_stage[DSL_TYPE_UNIFORM_BUFFERS],
- dev_data->phys_dev_props.limits.maxPerStageDescriptorUniformBuffers,
- validation_error_map[VALIDATION_ERROR_0fe00240]);
+ dev_data->phys_dev_props.limits.maxPerStageDescriptorUniformBuffers);
}
// Storage buffers
@@ -5345,10 +5300,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00242, "DS",
"vkCreatePipelineLayout(): max per-stage storage buffer bindings count (%d) exceeds device "
- "maxPerStageDescriptorStorageBuffers limit (%d). %s",
+ "maxPerStageDescriptorStorageBuffers limit (%d).",
max_descriptors_per_stage[DSL_TYPE_STORAGE_BUFFERS],
- dev_data->phys_dev_props.limits.maxPerStageDescriptorStorageBuffers,
- validation_error_map[VALIDATION_ERROR_0fe00242]);
+ dev_data->phys_dev_props.limits.maxPerStageDescriptorStorageBuffers);
}
// Sampled images
@@ -5356,10 +5310,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00244, "DS",
"vkCreatePipelineLayout(): max per-stage sampled image bindings count (%d) exceeds device "
- "maxPerStageDescriptorSampledImages limit (%d). %s",
+ "maxPerStageDescriptorSampledImages limit (%d).",
max_descriptors_per_stage[DSL_TYPE_SAMPLED_IMAGES],
- dev_data->phys_dev_props.limits.maxPerStageDescriptorSampledImages,
- validation_error_map[VALIDATION_ERROR_0fe00244]);
+ dev_data->phys_dev_props.limits.maxPerStageDescriptorSampledImages);
}
// Storage images
@@ -5367,10 +5320,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00246, "DS",
"vkCreatePipelineLayout(): max per-stage storage image bindings count (%d) exceeds device "
- "maxPerStageDescriptorStorageImages limit (%d). %s",
+ "maxPerStageDescriptorStorageImages limit (%d).",
max_descriptors_per_stage[DSL_TYPE_STORAGE_IMAGES],
- dev_data->phys_dev_props.limits.maxPerStageDescriptorStorageImages,
- validation_error_map[VALIDATION_ERROR_0fe00246]);
+ dev_data->phys_dev_props.limits.maxPerStageDescriptorStorageImages);
}
// Input attachments
@@ -5379,10 +5331,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00d18, "DS",
"vkCreatePipelineLayout(): max per-stage input attachment bindings count (%d) exceeds device "
- "maxPerStageDescriptorInputAttachments limit (%d). %s",
+ "maxPerStageDescriptorInputAttachments limit (%d).",
max_descriptors_per_stage[DSL_TYPE_INPUT_ATTACHMENTS],
- dev_data->phys_dev_props.limits.maxPerStageDescriptorInputAttachments,
- validation_error_map[VALIDATION_ERROR_0fe00d18]);
+ dev_data->phys_dev_props.limits.maxPerStageDescriptorInputAttachments);
}
// Total descriptors by type
@@ -5394,9 +5345,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00d1a, "DS",
"vkCreatePipelineLayout(): sum of sampler bindings among all stages (%d) exceeds device "
- "maxDescriptorSetSamplers limit (%d). %s",
+ "maxDescriptorSetSamplers limit (%d).",
sum_all_stages[VK_DESCRIPTOR_TYPE_SAMPLER] + sum_all_stages[VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER],
- dev_data->phys_dev_props.limits.maxDescriptorSetSamplers, validation_error_map[VALIDATION_ERROR_0fe00d1a]);
+ dev_data->phys_dev_props.limits.maxDescriptorSetSamplers);
}
// Uniform buffers
@@ -5404,10 +5355,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00d1c, "DS",
"vkCreatePipelineLayout(): sum of uniform buffer bindings among all stages (%d) exceeds device "
- "maxDescriptorSetUniformBuffers limit (%d). %s",
+ "maxDescriptorSetUniformBuffers limit (%d).",
sum_all_stages[VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER],
- dev_data->phys_dev_props.limits.maxDescriptorSetUniformBuffers,
- validation_error_map[VALIDATION_ERROR_0fe00d1c]);
+ dev_data->phys_dev_props.limits.maxDescriptorSetUniformBuffers);
}
// Dynamic uniform buffers
@@ -5416,10 +5366,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00d1e, "DS",
"vkCreatePipelineLayout(): sum of dynamic uniform buffer bindings among all stages (%d) exceeds device "
- "maxDescriptorSetUniformBuffersDynamic limit (%d). %s",
+ "maxDescriptorSetUniformBuffersDynamic limit (%d).",
sum_all_stages[VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC],
- dev_data->phys_dev_props.limits.maxDescriptorSetUniformBuffersDynamic,
- validation_error_map[VALIDATION_ERROR_0fe00d1e]);
+ dev_data->phys_dev_props.limits.maxDescriptorSetUniformBuffersDynamic);
}
// Storage buffers
@@ -5427,10 +5376,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00d20, "DS",
"vkCreatePipelineLayout(): sum of storage buffer bindings among all stages (%d) exceeds device "
- "maxDescriptorSetStorageBuffers limit (%d). %s",
+ "maxDescriptorSetStorageBuffers limit (%d).",
sum_all_stages[VK_DESCRIPTOR_TYPE_STORAGE_BUFFER],
- dev_data->phys_dev_props.limits.maxDescriptorSetStorageBuffers,
- validation_error_map[VALIDATION_ERROR_0fe00d20]);
+ dev_data->phys_dev_props.limits.maxDescriptorSetStorageBuffers);
}
// Dynamic storage buffers
@@ -5439,10 +5387,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00d22, "DS",
"vkCreatePipelineLayout(): sum of dynamic storage buffer bindings among all stages (%d) exceeds device "
- "maxDescriptorSetStorageBuffersDynamic limit (%d). %s",
+ "maxDescriptorSetStorageBuffersDynamic limit (%d).",
sum_all_stages[VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC],
- dev_data->phys_dev_props.limits.maxDescriptorSetStorageBuffersDynamic,
- validation_error_map[VALIDATION_ERROR_0fe00d22]);
+ dev_data->phys_dev_props.limits.maxDescriptorSetStorageBuffersDynamic);
}
// Sampled images
@@ -5452,22 +5399,21 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00d24, "DS",
"vkCreatePipelineLayout(): sum of sampled image bindings among all stages (%d) exceeds device "
- "maxDescriptorSetSampledImages limit (%d). %s",
+ "maxDescriptorSetSampledImages limit (%d).",
sum_all_stages[VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE] + sum_all_stages[VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER] +
sum_all_stages[VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER],
- dev_data->phys_dev_props.limits.maxDescriptorSetSampledImages, validation_error_map[VALIDATION_ERROR_0fe00d24]);
+ dev_data->phys_dev_props.limits.maxDescriptorSetSampledImages);
}
// Storage images
if ((sum_all_stages[VK_DESCRIPTOR_TYPE_STORAGE_IMAGE] + sum_all_stages[VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER]) >
dev_data->phys_dev_props.limits.maxDescriptorSetStorageImages) {
- skip |=
- log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
- VALIDATION_ERROR_0fe00d26, "DS",
- "vkCreatePipelineLayout(): sum of storage image bindings among all stages (%d) exceeds device "
- "maxDescriptorSetStorageImages limit (%d). %s",
- sum_all_stages[VK_DESCRIPTOR_TYPE_STORAGE_IMAGE] + sum_all_stages[VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER],
- dev_data->phys_dev_props.limits.maxDescriptorSetStorageImages, validation_error_map[VALIDATION_ERROR_0fe00d26]);
+ skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
+ VALIDATION_ERROR_0fe00d26, "DS",
+ "vkCreatePipelineLayout(): sum of storage image bindings among all stages (%d) exceeds device "
+ "maxDescriptorSetStorageImages limit (%d).",
+ sum_all_stages[VK_DESCRIPTOR_TYPE_STORAGE_IMAGE] + sum_all_stages[VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER],
+ dev_data->phys_dev_props.limits.maxDescriptorSetStorageImages);
}
// Input attachments
@@ -5475,10 +5421,9 @@ static bool PreCallValiateCreatePipelineLayout(const layer_data *dev_data, const
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_0fe00d28, "DS",
"vkCreatePipelineLayout(): sum of input attachment bindings among all stages (%d) exceeds device "
- "maxDescriptorSetInputAttachments limit (%d). %s",
+ "maxDescriptorSetInputAttachments limit (%d).",
sum_all_stages[VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT],
- dev_data->phys_dev_props.limits.maxDescriptorSetInputAttachments,
- validation_error_map[VALIDATION_ERROR_0fe00d28]);
+ dev_data->phys_dev_props.limits.maxDescriptorSetInputAttachments);
}
return skip;
@@ -5662,8 +5607,7 @@ static bool PreCallValidateFreeDescriptorSets(const layer_data *dev_data, VkDesc
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT,
HandleToUint64(pool), __LINE__, VALIDATION_ERROR_28600270, "DS",
"It is invalid to call vkFreeDescriptorSets() with a pool created without setting "
- "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT. %s",
- validation_error_map[VALIDATION_ERROR_28600270]);
+ "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT.");
}
return skip;
}
@@ -5800,8 +5744,8 @@ VKAPI_ATTR VkResult VKAPI_CALL BeginCommandBuffer(VkCommandBuffer commandBuffer,
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_16e00062, "MEM",
"Calling vkBeginCommandBuffer() on active command buffer %" PRIx64
- " before it has completed. You must check command buffer fence before this call. %s",
- HandleToUint64(commandBuffer), validation_error_map[VALIDATION_ERROR_16e00062]);
+ " before it has completed. You must check command buffer fence before this call.",
+ HandleToUint64(commandBuffer));
}
clear_cmd_buf_and_mem_references(dev_data, cb_node);
if (cb_node->createInfo.level != VK_COMMAND_BUFFER_LEVEL_PRIMARY) {
@@ -5811,8 +5755,8 @@ VKAPI_ATTR VkResult VKAPI_CALL BeginCommandBuffer(VkCommandBuffer commandBuffer,
skip |=
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_16e00066, "DS",
- "vkBeginCommandBuffer(): Secondary Command Buffer (0x%" PRIx64 ") must have inheritance info. %s",
- HandleToUint64(commandBuffer), validation_error_map[VALIDATION_ERROR_16e00066]);
+ "vkBeginCommandBuffer(): Secondary Command Buffer (0x%" PRIx64 ") must have inheritance info.",
+ HandleToUint64(commandBuffer));
} else {
if (pBeginInfo->flags & VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT) {
assert(pInfo->renderPass);
@@ -5837,8 +5781,8 @@ VKAPI_ATTR VkResult VKAPI_CALL BeginCommandBuffer(VkCommandBuffer commandBuffer,
VALIDATION_ERROR_16e00068, "DS",
"vkBeginCommandBuffer(): Secondary Command Buffer (0x%" PRIx64
") must not have VK_QUERY_CONTROL_PRECISE_BIT if occulusionQuery is disabled or the device "
- "does not support precise occlusion queries. %s",
- HandleToUint64(commandBuffer), validation_error_map[VALIDATION_ERROR_16e00068]);
+ "does not support precise occlusion queries.",
+ HandleToUint64(commandBuffer));
}
}
if (pInfo && pInfo->renderPass != VK_NULL_HANDLE) {
@@ -5849,9 +5793,8 @@ VKAPI_ATTR VkResult VKAPI_CALL BeginCommandBuffer(VkCommandBuffer commandBuffer,
VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, HandleToUint64(commandBuffer), __LINE__,
VALIDATION_ERROR_0280006c, "DS",
"vkBeginCommandBuffer(): Secondary Command Buffers (0x%" PRIx64
- ") must have a subpass index (%d) that is less than the number of subpasses (%d). %s",
- HandleToUint64(commandBuffer), pInfo->subpass, renderPass->createInfo.subpassCount,
- validation_error_map[VALIDATION_ERROR_0280006c]);
+ ") must have a subpass index (%d) that is less than the number of subpasses (%d).",
+ HandleToUint64(commandBuffer), pInfo->subpass, renderPass->createInfo.subpassCount);
}
}
}
@@ -5860,19 +5803,19 @@ VKAPI_ATTR VkResult VKAPI_CALL BeginCommandBuffer(VkCommandBuffer commandBuffer,
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_16e00062, "DS",
"vkBeginCommandBuffer(): Cannot call Begin on command buffer (0x%" PRIx64
- ") in the RECORDING state. Must first call vkEndCommandBuffer(). %s",
- HandleToUint64(commandBuffer), validation_error_map[VALIDATION_ERROR_16e00062]);
+ ") in the RECORDING state. Must first call vkEndCommandBuffer().",
+ HandleToUint64(commandBuffer));
} else if (CB_RECORDED == cb_node->state || CB_INVALID_COMPLETE == cb_node->state) {
VkCommandPool cmdPool = cb_node->createInfo.commandPool;
auto pPool = GetCommandPoolNode(dev_data, cmdPool);
if (!(VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT & pPool->createFlags)) {
- skip |= log_msg(
- dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
- HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_16e00064, "DS",
- "Call to vkBeginCommandBuffer() on command buffer (0x%" PRIx64
- ") attempts to implicitly reset cmdBuffer created from command pool (0x%" PRIx64
- ") that does NOT have the VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT bit set. %s",
- HandleToUint64(commandBuffer), HandleToUint64(cmdPool), validation_error_map[VALIDATION_ERROR_16e00064]);
+ skip |=
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
+ HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_16e00064, "DS",
+ "Call to vkBeginCommandBuffer() on command buffer (0x%" PRIx64
+ ") attempts to implicitly reset cmdBuffer created from command pool (0x%" PRIx64
+ ") that does NOT have the VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT bit set.",
+ HandleToUint64(commandBuffer), HandleToUint64(cmdPool));
}
ResetCommandBufferState(dev_data, commandBuffer);
}
@@ -5924,8 +5867,8 @@ VKAPI_ATTR VkResult VKAPI_CALL EndCommandBuffer(VkCommandBuffer commandBuffer) {
for (auto query : pCB->activeQueries) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_2740007a, "DS",
- "Ending command buffer with in progress query: queryPool 0x%" PRIx64 ", index %d. %s",
- HandleToUint64(query.pool), query.index, validation_error_map[VALIDATION_ERROR_2740007a]);
+ "Ending command buffer with in progress query: queryPool 0x%" PRIx64 ", index %d.",
+ HandleToUint64(query.pool), query.index);
}
}
if (!skip) {
@@ -5953,8 +5896,8 @@ VKAPI_ATTR VkResult VKAPI_CALL ResetCommandBuffer(VkCommandBuffer commandBuffer,
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_3260005c, "DS",
"Attempt to reset command buffer (0x%" PRIx64 ") created from command pool (0x%" PRIx64
- ") that does NOT have the VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT bit set. %s",
- HandleToUint64(commandBuffer), HandleToUint64(cmdPool), validation_error_map[VALIDATION_ERROR_3260005c]);
+ ") that does NOT have the VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT bit set.",
+ HandleToUint64(commandBuffer), HandleToUint64(cmdPool));
}
skip |= checkCommandBufferInFlight(dev_data, pCB, "reset", VALIDATION_ERROR_3260005a);
lock.unlock();
@@ -6007,8 +5950,7 @@ VKAPI_ATTR void VKAPI_CALL CmdSetViewport(VkCommandBuffer commandBuffer, uint32_
if (pCB->static_status & CBSTATUS_VIEWPORT_SET) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1e00098a, "DS",
- "vkCmdSetViewport(): pipeline was created without VK_DYNAMIC_STATE_VIEWPORT flag. %s.",
- validation_error_map[VALIDATION_ERROR_1e00098a]);
+ "vkCmdSetViewport(): pipeline was created without VK_DYNAMIC_STATE_VIEWPORT flag..");
}
if (!skip) {
pCB->viewportMask |= ((1u << viewportCount) - 1u) << firstViewport;
@@ -6031,8 +5973,7 @@ VKAPI_ATTR void VKAPI_CALL CmdSetScissor(VkCommandBuffer commandBuffer, uint32_t
if (pCB->static_status & CBSTATUS_SCISSOR_SET) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1d80049c, "DS",
- "vkCmdSetScissor(): pipeline was created without VK_DYNAMIC_STATE_SCISSOR flag. %s.",
- validation_error_map[VALIDATION_ERROR_1d80049c]);
+ "vkCmdSetScissor(): pipeline was created without VK_DYNAMIC_STATE_SCISSOR flag..");
}
if (!skip) {
pCB->scissorMask |= ((1u << scissorCount) - 1u) << firstScissor;
@@ -6055,8 +5996,7 @@ VKAPI_ATTR void VKAPI_CALL CmdSetLineWidth(VkCommandBuffer commandBuffer, float
if (pCB->static_status & CBSTATUS_LINE_WIDTH_SET) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1d600626, "DS",
- "vkCmdSetLineWidth called but pipeline was created without VK_DYNAMIC_STATE_LINE_WIDTH flag. %s",
- validation_error_map[VALIDATION_ERROR_1d600626]);
+ "vkCmdSetLineWidth called but pipeline was created without VK_DYNAMIC_STATE_LINE_WIDTH flag.");
}
if (!skip) {
pCB->status |= CBSTATUS_LINE_WIDTH_SET;
@@ -6078,15 +6018,13 @@ VKAPI_ATTR void VKAPI_CALL CmdSetDepthBias(VkCommandBuffer commandBuffer, float
if (pCB->static_status & CBSTATUS_DEPTH_BIAS_SET) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1cc0062a, "DS",
- "vkCmdSetDepthBias(): pipeline was created without VK_DYNAMIC_STATE_DEPTH_BIAS flag. %s.",
- validation_error_map[VALIDATION_ERROR_1cc0062a]);
+ "vkCmdSetDepthBias(): pipeline was created without VK_DYNAMIC_STATE_DEPTH_BIAS flag..");
}
if ((depthBiasClamp != 0.0) && (!dev_data->enabled_features.depthBiasClamp)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1cc0062c, "DS",
"vkCmdSetDepthBias(): the depthBiasClamp device feature is disabled: the depthBiasClamp parameter must "
- "be set to 0.0. %s",
- validation_error_map[VALIDATION_ERROR_1cc0062c]);
+ "be set to 0.0.");
}
if (!skip) {
pCB->status |= CBSTATUS_DEPTH_BIAS_SET;
@@ -6108,8 +6046,7 @@ VKAPI_ATTR void VKAPI_CALL CmdSetBlendConstants(VkCommandBuffer commandBuffer, c
if (pCB->static_status & CBSTATUS_BLEND_CONSTANTS_SET) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1ca004c8, "DS",
- "vkCmdSetBlendConstants(): pipeline was created without VK_DYNAMIC_STATE_BLEND_CONSTANTS flag. %s.",
- validation_error_map[VALIDATION_ERROR_1ca004c8]);
+ "vkCmdSetBlendConstants(): pipeline was created without VK_DYNAMIC_STATE_BLEND_CONSTANTS flag..");
}
if (!skip) {
pCB->status |= CBSTATUS_BLEND_CONSTANTS_SET;
@@ -6130,8 +6067,7 @@ VKAPI_ATTR void VKAPI_CALL CmdSetDepthBounds(VkCommandBuffer commandBuffer, floa
if (pCB->static_status & CBSTATUS_DEPTH_BOUNDS_SET) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1ce004ae, "DS",
- "vkCmdSetDepthBounds(): pipeline was created without VK_DYNAMIC_STATE_DEPTH_BOUNDS flag. %s.",
- validation_error_map[VALIDATION_ERROR_1ce004ae]);
+ "vkCmdSetDepthBounds(): pipeline was created without VK_DYNAMIC_STATE_DEPTH_BOUNDS flag..");
}
if (!skip) {
pCB->status |= CBSTATUS_DEPTH_BOUNDS_SET;
@@ -6152,11 +6088,10 @@ VKAPI_ATTR void VKAPI_CALL CmdSetStencilCompareMask(VkCommandBuffer commandBuffe
ValidateCmdQueueFlags(dev_data, pCB, "vkCmdSetStencilCompareMask()", VK_QUEUE_GRAPHICS_BIT, VALIDATION_ERROR_1da02415);
skip |= ValidateCmd(dev_data, pCB, CMD_SETSTENCILCOMPAREMASK, "vkCmdSetStencilCompareMask()");
if (pCB->static_status & CBSTATUS_STENCIL_READ_MASK_SET) {
- skip |= log_msg(
- dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
- HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1da004b4, "DS",
- "vkCmdSetStencilCompareMask(): pipeline was created without VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK flag. %s.",
- validation_error_map[VALIDATION_ERROR_1da004b4]);
+ skip |=
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
+ HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1da004b4, "DS",
+ "vkCmdSetStencilCompareMask(): pipeline was created without VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK flag..");
}
if (!skip) {
pCB->status |= CBSTATUS_STENCIL_READ_MASK_SET;
@@ -6176,11 +6111,9 @@ VKAPI_ATTR void VKAPI_CALL CmdSetStencilWriteMask(VkCommandBuffer commandBuffer,
ValidateCmdQueueFlags(dev_data, pCB, "vkCmdSetStencilWriteMask()", VK_QUEUE_GRAPHICS_BIT, VALIDATION_ERROR_1de02415);
skip |= ValidateCmd(dev_data, pCB, CMD_SETSTENCILWRITEMASK, "vkCmdSetStencilWriteMask()");
if (pCB->static_status & CBSTATUS_STENCIL_WRITE_MASK_SET) {
- skip |=
- log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
- HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1de004b6, "DS",
- "vkCmdSetStencilWriteMask(): pipeline was created without VK_DYNAMIC_STATE_STENCIL_WRITE_MASK flag. %s.",
- validation_error_map[VALIDATION_ERROR_1de004b6]);
+ skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
+ HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1de004b6, "DS",
+ "vkCmdSetStencilWriteMask(): pipeline was created without VK_DYNAMIC_STATE_STENCIL_WRITE_MASK flag..");
}
if (!skip) {
pCB->status |= CBSTATUS_STENCIL_WRITE_MASK_SET;
@@ -6202,8 +6135,7 @@ VKAPI_ATTR void VKAPI_CALL CmdSetStencilReference(VkCommandBuffer commandBuffer,
if (pCB->static_status & CBSTATUS_STENCIL_REFERENCE_SET) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1dc004b8, "DS",
- "vkCmdSetStencilReference(): pipeline was created without VK_DYNAMIC_STATE_STENCIL_REFERENCE flag. %s.",
- validation_error_map[VALIDATION_ERROR_1dc004b8]);
+ "vkCmdSetStencilReference(): pipeline was created without VK_DYNAMIC_STATE_STENCIL_REFERENCE flag..");
}
if (!skip) {
pCB->status |= CBSTATUS_STENCIL_REFERENCE_SET;
@@ -6370,9 +6302,8 @@ static bool PreCallValidateCmdBindDescriptorSets(layer_data *device_data, GLOBAL
log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT,
HandleToUint64(pDescriptorSets[set_idx]), __LINE__, VALIDATION_ERROR_17c002cc, "DS",
"descriptorSet #%u being bound is not compatible with overlapping descriptorSetLayout at index %u of "
- "pipelineLayout 0x%" PRIx64 " due to: %s. %s",
- set_idx, set_idx + firstSet, HandleToUint64(layout), error_string.c_str(),
- validation_error_map[VALIDATION_ERROR_17c002cc]);
+ "pipelineLayout 0x%" PRIx64 " due to: %s.",
+ set_idx, set_idx + firstSet, HandleToUint64(layout), error_string.c_str());
}
auto set_dynamic_descriptor_count = descriptor_set->GetDynamicDescriptorCount();
@@ -6399,10 +6330,9 @@ static bool PreCallValidateCmdBindDescriptorSets(layer_data *device_data, GLOBAL
VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, 0, __LINE__,
VALIDATION_ERROR_17c002d4, "DS",
"vkCmdBindDescriptorSets(): pDynamicOffsets[%d] is %d but must be a multiple of "
- "device limit minUniformBufferOffsetAlignment 0x%" PRIxLEAST64 ". %s",
+ "device limit minUniformBufferOffsetAlignment 0x%" PRIxLEAST64 ".",
cur_dyn_offset, pDynamicOffsets[cur_dyn_offset],
- device_data->phys_dev_properties.properties.limits.minUniformBufferOffsetAlignment,
- validation_error_map[VALIDATION_ERROR_17c002d4]);
+ device_data->phys_dev_properties.properties.limits.minUniformBufferOffsetAlignment);
}
cur_dyn_offset++;
} else if (descriptor_set->GetTypeFromGlobalIndex(d) == VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC) {
@@ -6413,10 +6343,9 @@ static bool PreCallValidateCmdBindDescriptorSets(layer_data *device_data, GLOBAL
VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, 0, __LINE__,
VALIDATION_ERROR_17c002d4, "DS",
"vkCmdBindDescriptorSets(): pDynamicOffsets[%d] is %d but must be a multiple of "
- "device limit minStorageBufferOffsetAlignment 0x%" PRIxLEAST64 ". %s",
+ "device limit minStorageBufferOffsetAlignment 0x%" PRIxLEAST64 ".",
cur_dyn_offset, pDynamicOffsets[cur_dyn_offset],
- device_data->phys_dev_properties.properties.limits.minStorageBufferOffsetAlignment,
- validation_error_map[VALIDATION_ERROR_17c002d4]);
+ device_data->phys_dev_properties.properties.limits.minStorageBufferOffsetAlignment);
}
cur_dyn_offset++;
}
@@ -6437,8 +6366,8 @@ static bool PreCallValidateCmdBindDescriptorSets(layer_data *device_data, GLOBAL
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_17c002ce, "DS",
"Attempting to bind %u descriptorSets with %u dynamic descriptors, but dynamicOffsetCount is %u. It should "
- "exactly match the number of dynamic descriptors. %s",
- setCount, total_dynamic_descriptors, dynamicOffsetCount, validation_error_map[VALIDATION_ERROR_17c002ce]);
+ "exactly match the number of dynamic descriptors.",
+ setCount, total_dynamic_descriptors, dynamicOffsetCount);
}
return skip;
}
@@ -6484,8 +6413,8 @@ bool ValidatePipelineBindPoint(layer_data *device_data, GLOBAL_CB_NODE *cb_state
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
cb_u64, __LINE__, error, "DS",
"%s: CommandBuffer 0x%" PRIxLEAST64 " was allocated from VkCommandPool 0x%" PRIxLEAST64
- " that does not support bindpoint %s. %s",
- func_name, cb_u64, cp_u64, string_VkPipelineBindPoint(bind_point), validation_error_map[error]);
+ " that does not support bindpoint %s.",
+ func_name, cb_u64, cp_u64, string_VkPipelineBindPoint(bind_point));
}
}
return skip;
@@ -6514,16 +6443,15 @@ static bool PreCallValidateCmdPushDescriptorSetKHR(layer_data *device_data, GLOB
log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT,
VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT, layout_u64, __LINE__, VALIDATION_ERROR_1be002da, "DS",
"%s: Set index %" PRIu32
- " does not match push descriptor set layout index for VkPipelineLayout 0x%" PRIxLEAST64 ". %s",
- func_name, set, layout_u64, validation_error_map[VALIDATION_ERROR_1be002da]);
+ " does not match push descriptor set layout index for VkPipelineLayout 0x%" PRIxLEAST64 ".",
+ func_name, set, layout_u64);
}
} else {
skip = log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT,
layout_u64, __LINE__, VALIDATION_ERROR_1be002d8, "DS",
"%s: Set index %" PRIu32 " is outside of range for VkPipelineLayout 0x%" PRIxLEAST64 " (set < %" PRIu32
- "). %s",
- func_name, set, layout_u64, static_cast<uint32_t>(set_layouts.size()),
- validation_error_map[VALIDATION_ERROR_1be002d8]);
+ ").",
+ func_name, set, layout_u64, static_cast<uint32_t>(set_layouts.size()));
}
}
@@ -6593,8 +6521,8 @@ VKAPI_ATTR void VKAPI_CALL CmdBindIndexBuffer(VkCommandBuffer commandBuffer, VkB
if (offset % offset_align) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_17e00360, "DS",
- "vkCmdBindIndexBuffer() offset (0x%" PRIxLEAST64 ") does not fall on alignment (%s) boundary. %s", offset,
- string_VkIndexType(indexType), validation_error_map[VALIDATION_ERROR_17e00360]);
+ "vkCmdBindIndexBuffer() offset (0x%" PRIxLEAST64 ") does not fall on alignment (%s) boundary.", offset,
+ string_VkIndexType(indexType));
}
if (skip) return;
@@ -6641,8 +6569,7 @@ VKAPI_ATTR void VKAPI_CALL CmdBindVertexBuffers(VkCommandBuffer commandBuffer, u
if (pOffsets[i] >= buffer_state->createInfo.size) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT,
HandleToUint64(buffer_state->buffer), __LINE__, VALIDATION_ERROR_182004e4, "DS",
- "vkCmdBindVertexBuffers() offset (0x%" PRIxLEAST64 ") is beyond the end of the buffer. %s", pOffsets[i],
- validation_error_map[VALIDATION_ERROR_182004e4]);
+ "vkCmdBindVertexBuffers() offset (0x%" PRIxLEAST64 ") is beyond the end of the buffer.", pOffsets[i]);
}
}
@@ -6955,9 +6882,9 @@ bool ValidateImageSampleCount(layer_data *dev_data, IMAGE_STATE *image_state, Vk
if (image_state->createInfo.samples != sample_count) {
skip = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT,
HandleToUint64(image_state->image), 0, msgCode, "DS",
- "%s for image 0x%" PRIx64 " was created with a sample count of %s but must be %s. %s", location,
+ "%s for image 0x%" PRIx64 " was created with a sample count of %s but must be %s.", location,
HandleToUint64(image_state->image), string_VkSampleCountFlagBits(image_state->createInfo.samples),
- string_VkSampleCountFlagBits(sample_count), validation_error_map[msgCode]);
+ string_VkSampleCountFlagBits(sample_count));
}
return skip;
}
@@ -7294,37 +7221,33 @@ static bool ValidateImageBarrierImage(layer_data *device_data, const char *funcN
device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT, rp_handle,
__LINE__, VALIDATION_ERROR_1b800936, "CORE",
"%s: Barrier pImageMemoryBarriers[%d].image (0x%" PRIx64
- ") is not referenced by the VkSubpassDescription for active subpass (%d) of current renderPass (0x%" PRIx64 "). %s",
- funcName, img_index, HandleToUint64(img_bar_image), active_subpass, rp_handle,
- validation_error_map[VALIDATION_ERROR_1b800936]);
+ ") is not referenced by the VkSubpassDescription for active subpass (%d) of current renderPass (0x%" PRIx64 ").",
+ funcName, img_index, HandleToUint64(img_bar_image), active_subpass, rp_handle);
}
} else { // !image_match
auto const fb_handle = HandleToUint64(fb_state->framebuffer);
- skip |=
- log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT, fb_handle,
- __LINE__, VALIDATION_ERROR_1b800936, "CORE",
- "%s: Barrier pImageMemoryBarriers[%d].image (0x%" PRIx64
- ") does not match an image from the current framebuffer (0x%" PRIx64 "). %s",
- funcName, img_index, HandleToUint64(img_bar_image), fb_handle, validation_error_map[VALIDATION_ERROR_1b800936]);
+ skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT,
+ fb_handle, __LINE__, VALIDATION_ERROR_1b800936, "CORE",
+ "%s: Barrier pImageMemoryBarriers[%d].image (0x%" PRIx64
+ ") does not match an image from the current framebuffer (0x%" PRIx64 ").",
+ funcName, img_index, HandleToUint64(img_bar_image), fb_handle);
}
if (img_barrier.oldLayout != img_barrier.newLayout) {
- skip |=
- log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
- HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_1b80093a, "CORE",
- "%s: As the Image Barrier for image 0x%" PRIx64
- " is being executed within a render pass instance, oldLayout must equal newLayout yet they are %s and %s. %s",
- funcName, HandleToUint64(img_barrier.image), string_VkImageLayout(img_barrier.oldLayout),
- string_VkImageLayout(img_barrier.newLayout), validation_error_map[VALIDATION_ERROR_1b80093a]);
+ skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
+ HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_1b80093a, "CORE",
+ "%s: As the Image Barrier for image 0x%" PRIx64
+ " is being executed within a render pass instance, oldLayout must equal newLayout yet they are %s and %s.",
+ funcName, HandleToUint64(img_barrier.image), string_VkImageLayout(img_barrier.oldLayout),
+ string_VkImageLayout(img_barrier.newLayout));
} else {
if (sub_image_found && sub_image_layout != img_barrier.oldLayout) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
rp_handle, __LINE__, VALIDATION_ERROR_1b800938, "CORE",
"%s: Barrier pImageMemoryBarriers[%d].image (0x%" PRIx64
") is referenced by the VkSubpassDescription for active subpass (%d) of current renderPass (0x%" PRIx64
- ") as having layout %s, but image barrier has layout %s. %s",
+ ") as having layout %s, but image barrier has layout %s.",
funcName, img_index, HandleToUint64(img_bar_image), active_subpass, rp_handle,
- string_VkImageLayout(img_barrier.oldLayout), string_VkImageLayout(sub_image_layout),
- validation_error_map[VALIDATION_ERROR_1b800938]);
+ string_VkImageLayout(img_barrier.oldLayout), string_VkImageLayout(sub_image_layout));
}
}
return skip;
@@ -7343,27 +7266,24 @@ static bool ValidateRenderPassImageBarriers(layer_data *device_data, const char
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
rp_handle, __LINE__, VALIDATION_ERROR_1b80092e, "CORE",
"%s: Barrier pImageMemoryBarriers[%d].srcAccessMask(0x%X) is not a subset of VkSubpassDependency "
- "srcAccessMask(0x%X) of subpass %d of renderPass 0x%" PRIx64 ". %s",
- funcName, i, img_src_access_mask, sub_src_access_mask, active_subpass, rp_handle,
- validation_error_map[VALIDATION_ERROR_1b80092e]);
+ "srcAccessMask(0x%X) of subpass %d of renderPass 0x%" PRIx64 ".",
+ funcName, i, img_src_access_mask, sub_src_access_mask, active_subpass, rp_handle);
}
const auto &img_dst_access_mask = img_barrier.dstAccessMask;
if (img_dst_access_mask != (sub_dst_access_mask & img_dst_access_mask)) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
rp_handle, __LINE__, VALIDATION_ERROR_1b800930, "CORE",
"%s: Barrier pImageMemoryBarriers[%d].dstAccessMask(0x%X) is not a subset of VkSubpassDependency "
- "dstAccessMask(0x%X) of subpass %d of renderPass 0x%" PRIx64 ". %s",
- funcName, i, img_dst_access_mask, sub_dst_access_mask, active_subpass, rp_handle,
- validation_error_map[VALIDATION_ERROR_1b800930]);
+ "dstAccessMask(0x%X) of subpass %d of renderPass 0x%" PRIx64 ".",
+ funcName, i, img_dst_access_mask, sub_dst_access_mask, active_subpass, rp_handle);
}
if (VK_QUEUE_FAMILY_IGNORED != img_barrier.srcQueueFamilyIndex ||
VK_QUEUE_FAMILY_IGNORED != img_barrier.dstQueueFamilyIndex) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
rp_handle, __LINE__, VALIDATION_ERROR_1b80093c, "CORE",
"%s: Barrier pImageMemoryBarriers[%d].srcQueueFamilyIndex is %d and "
- "pImageMemoryBarriers[%d].dstQueueFamilyIndex is %d but both must be VK_QUEUE_FAMILY_IGNORED. %s",
- funcName, i, img_barrier.srcQueueFamilyIndex, i, img_barrier.dstQueueFamilyIndex,
- validation_error_map[VALIDATION_ERROR_1b80093c]);
+ "pImageMemoryBarriers[%d].dstQueueFamilyIndex is %d but both must be VK_QUEUE_FAMILY_IGNORED.",
+ funcName, i, img_barrier.srcQueueFamilyIndex, i, img_barrier.dstQueueFamilyIndex);
}
// Secondary CBs can have null framebuffer so queue up validation in that case 'til FB is known
if (VK_NULL_HANDLE == cb_state->activeFramebuffer) {
@@ -7394,11 +7314,11 @@ static bool ValidateRenderPassPipelineBarriers(layer_data *device_data, const ch
const auto active_subpass = cb_state->activeSubpass;
auto rp_handle = HandleToUint64(rp_state->renderPass);
if (!rp_state->hasSelfDependency[active_subpass]) {
- skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
- rp_handle, __LINE__, VALIDATION_ERROR_1b800928, "CORE",
- "%s: Barriers cannot be set during subpass %d of renderPass 0x%" PRIx64
- " with no self-dependency specified. %s",
- funcName, active_subpass, rp_handle, validation_error_map[VALIDATION_ERROR_1b800928]);
+ skip |=
+ log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT, rp_handle,
+ __LINE__, VALIDATION_ERROR_1b800928, "CORE",
+ "%s: Barriers cannot be set during subpass %d of renderPass 0x%" PRIx64 " with no self-dependency specified.",
+ funcName, active_subpass, rp_handle);
} else {
assert(rp_state->subpass_to_dependency_index[cb_state->activeSubpass] != -1);
// Grab ref to current subpassDescription up-front for use below
@@ -7411,25 +7331,22 @@ static bool ValidateRenderPassPipelineBarriers(layer_data *device_data, const ch
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
rp_handle, __LINE__, VALIDATION_ERROR_1b80092a, "CORE",
"%s: Barrier srcStageMask(0x%X) is not a subset of VkSubpassDependency srcStageMask(0x%X) of subpass "
- "%d of renderPass 0x%" PRIx64 ". %s",
- funcName, src_stage_mask, sub_src_stage_mask, active_subpass, rp_handle,
- validation_error_map[VALIDATION_ERROR_1b80092a]);
+ "%d of renderPass 0x%" PRIx64 ".",
+ funcName, src_stage_mask, sub_src_stage_mask, active_subpass, rp_handle);
}
if ((sub_dst_stage_mask != VK_PIPELINE_STAGE_ALL_COMMANDS_BIT) &&
(dst_stage_mask != (sub_dst_stage_mask & dst_stage_mask))) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
rp_handle, __LINE__, VALIDATION_ERROR_1b80092c, "CORE",
"%s: Barrier dstStageMask(0x%X) is not a subset of VkSubpassDependency dstStageMask(0x%X) of subpass "
- "%d of renderPass 0x%" PRIx64 ". %s",
- funcName, dst_stage_mask, sub_dst_stage_mask, active_subpass, rp_handle,
- validation_error_map[VALIDATION_ERROR_1b80092c]);
+ "%d of renderPass 0x%" PRIx64 ".",
+ funcName, dst_stage_mask, sub_dst_stage_mask, active_subpass, rp_handle);
}
if (0 != buffer_mem_barrier_count) {
- skip |=
- log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
- rp_handle, __LINE__, VALIDATION_ERROR_1b800934, "CORE",
- "%s: bufferMemoryBarrierCount is non-zero (%d) for subpass %d of renderPass 0x%" PRIx64 ". %s", funcName,
- buffer_mem_barrier_count, active_subpass, rp_handle, validation_error_map[VALIDATION_ERROR_1b800934]);
+ skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
+ rp_handle, __LINE__, VALIDATION_ERROR_1b800934, "CORE",
+ "%s: bufferMemoryBarrierCount is non-zero (%d) for subpass %d of renderPass 0x%" PRIx64 ".", funcName,
+ buffer_mem_barrier_count, active_subpass, rp_handle);
}
const auto &sub_src_access_mask = sub_dep.srcAccessMask;
const auto &sub_dst_access_mask = sub_dep.dstAccessMask;
@@ -7439,18 +7356,16 @@ static bool ValidateRenderPassPipelineBarriers(layer_data *device_data, const ch
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT,
VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT, rp_handle, __LINE__, VALIDATION_ERROR_1b80092e, "CORE",
"%s: Barrier pMemoryBarriers[%d].srcAccessMask(0x%X) is not a subset of VkSubpassDependency "
- "srcAccessMask(0x%X) of subpass %d of renderPass 0x%" PRIx64 ". %s",
- funcName, i, mb_src_access_mask, sub_src_access_mask, active_subpass, rp_handle,
- validation_error_map[VALIDATION_ERROR_1b80092e]);
+ "srcAccessMask(0x%X) of subpass %d of renderPass 0x%" PRIx64 ".",
+ funcName, i, mb_src_access_mask, sub_src_access_mask, active_subpass, rp_handle);
}
const auto &mb_dst_access_mask = mem_barriers[i].dstAccessMask;
if (mb_dst_access_mask != (sub_dst_access_mask & mb_dst_access_mask)) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT,
VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT, rp_handle, __LINE__, VALIDATION_ERROR_1b800930, "CORE",
"%s: Barrier pMemoryBarriers[%d].dstAccessMask(0x%X) is not a subset of VkSubpassDependency "
- "dstAccessMask(0x%X) of subpass %d of renderPass 0x%" PRIx64 ". %s",
- funcName, i, mb_dst_access_mask, sub_dst_access_mask, active_subpass, rp_handle,
- validation_error_map[VALIDATION_ERROR_1b800930]);
+ "dstAccessMask(0x%X) of subpass %d of renderPass 0x%" PRIx64 ".",
+ funcName, i, mb_dst_access_mask, sub_dst_access_mask, active_subpass, rp_handle);
}
}
skip |= ValidateRenderPassImageBarriers(device_data, funcName, cb_state, active_subpass, sub_desc, rp_handle,
@@ -7459,9 +7374,8 @@ static bool ValidateRenderPassPipelineBarriers(layer_data *device_data, const ch
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
rp_handle, __LINE__, VALIDATION_ERROR_1b800932, "CORE",
"%s: dependencyFlags param (0x%X) does not equal VkSubpassDependency dependencyFlags value (0x%X) for "
- "subpass %d of renderPass 0x%" PRIx64 ". %s",
- funcName, dependency_flags, sub_dep.dependencyFlags, cb_state->activeSubpass, rp_handle,
- validation_error_map[VALIDATION_ERROR_1b800932]);
+ "subpass %d of renderPass 0x%" PRIx64 ".",
+ funcName, dependency_flags, sub_dep.dependencyFlags, cb_state->activeSubpass, rp_handle);
}
}
return skip;
@@ -7609,10 +7523,9 @@ class ValidatorState {
const UNIQUE_VALIDATION_ERROR_CODE val_code = val_codes_[vu_index];
const char *annotation = GetFamilyAnnotation(family);
return log_msg(report_data_, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, cb_handle64_,
- location, val_code, "DS",
- "%s: Barrier using %s 0x%" PRIx64 " created with sharingMode %s, has %s %u%s. %s %s", func_name_,
- GetTypeString(), barrier_handle64_, GetModeString(), param_name, family, annotation, vu_summary[vu_index],
- validation_error_map[val_code]);
+ location, val_code, "DS", "%s: Barrier using %s 0x%" PRIx64 " created with sharingMode %s, has %s %u%s. %s",
+ func_name_, GetTypeString(), barrier_handle64_, GetModeString(), param_name, family, annotation,
+ vu_summary[vu_index]);
}
bool LogMsg(VuIndex vu_index, size_t location, uint32_t src_family, uint32_t dst_family) const {
@@ -7622,9 +7535,9 @@ class ValidatorState {
return log_msg(report_data_, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, cb_handle64_,
location, val_code, "DS",
"%s: Barrier using %s 0x%" PRIx64
- " created with sharingMode %s, has srcQueueFamilyIndex %u%s and dstQueueFamilyIndex %u%s. %s %s",
+ " created with sharingMode %s, has srcQueueFamilyIndex %u%s and dstQueueFamilyIndex %u%s. %s",
func_name_, GetTypeString(), barrier_handle64_, GetModeString(), src_family, src_annotation, dst_family,
- dst_annotation, vu_summary[vu_index], validation_error_map[val_code]);
+ dst_annotation, vu_summary[vu_index]);
}
// This abstract Vu can only be tested at submit time, thus we need a callback from the closure containing the needed
@@ -7643,10 +7556,9 @@ class ValidatorState {
return log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT,
HandleToUint64(queue), __LINE__, val_code, "DS",
"%s: Barrier submitted to queue with family index %u, using %s 0x%" PRIx64
- " created with sharingMode %s, has srcQueueFamilyIndex %u%s and dstQueueFamilyIndex %u%s. %s %s",
+ " created with sharingMode %s, has srcQueueFamilyIndex %u%s and dstQueueFamilyIndex %u%s. %s",
"vkQueueSubmit", queue_family, val.GetTypeString(), val.barrier_handle64_, val.GetModeString(),
- src_family, src_annotation, dst_family, dst_annotation, vu_summary[kSubmitQueueMustMatchSrcOrDst],
- validation_error_map[val_code]);
+ src_family, src_annotation, dst_family, dst_annotation, vu_summary[kSubmitQueueMustMatchSrcOrDst]);
}
return false;
}
@@ -7795,14 +7707,14 @@ static bool ValidateBarriers(layer_data *device_data, const char *funcName, GLOB
if (!ValidateAccessMaskPipelineStage(mem_barrier.srcAccessMask, src_stage_mask)) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_1b800940, "DS",
- "%s: pMemBarriers[%d].srcAccessMask (0x%X) is not supported by srcStageMask (0x%X). %s", funcName, i,
- mem_barrier.srcAccessMask, src_stage_mask, validation_error_map[VALIDATION_ERROR_1b800940]);
+ "%s: pMemBarriers[%d].srcAccessMask (0x%X) is not supported by srcStageMask (0x%X).", funcName, i,
+ mem_barrier.srcAccessMask, src_stage_mask);
}
if (!ValidateAccessMaskPipelineStage(mem_barrier.dstAccessMask, dst_stage_mask)) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_1b800942, "DS",
- "%s: pMemBarriers[%d].dstAccessMask (0x%X) is not supported by dstStageMask (0x%X). %s", funcName, i,
- mem_barrier.dstAccessMask, dst_stage_mask, validation_error_map[VALIDATION_ERROR_1b800942]);
+ "%s: pMemBarriers[%d].dstAccessMask (0x%X) is not supported by dstStageMask (0x%X).", funcName, i,
+ mem_barrier.dstAccessMask, dst_stage_mask);
}
}
for (uint32_t i = 0; i < imageMemBarrierCount; ++i) {
@@ -7810,14 +7722,14 @@ static bool ValidateBarriers(layer_data *device_data, const char *funcName, GLOB
if (!ValidateAccessMaskPipelineStage(mem_barrier->srcAccessMask, src_stage_mask)) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_1b800940, "DS",
- "%s: pImageMemBarriers[%d].srcAccessMask (0x%X) is not supported by srcStageMask (0x%X). %s", funcName,
- i, mem_barrier->srcAccessMask, src_stage_mask, validation_error_map[VALIDATION_ERROR_1b800940]);
+ "%s: pImageMemBarriers[%d].srcAccessMask (0x%X) is not supported by srcStageMask (0x%X).", funcName, i,
+ mem_barrier->srcAccessMask, src_stage_mask);
}
if (!ValidateAccessMaskPipelineStage(mem_barrier->dstAccessMask, dst_stage_mask)) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_1b800942, "DS",
- "%s: pImageMemBarriers[%d].dstAccessMask (0x%X) is not supported by dstStageMask (0x%X). %s", funcName,
- i, mem_barrier->dstAccessMask, dst_stage_mask, validation_error_map[VALIDATION_ERROR_1b800942]);
+ "%s: pImageMemBarriers[%d].dstAccessMask (0x%X) is not supported by dstStageMask (0x%X).", funcName, i,
+ mem_barrier->dstAccessMask, dst_stage_mask);
}
auto image_data = GetImageState(device_data, mem_barrier->image);
@@ -7826,8 +7738,7 @@ static bool ValidateBarriers(layer_data *device_data, const char *funcName, GLOB
if (mem_barrier->newLayout == VK_IMAGE_LAYOUT_UNDEFINED || mem_barrier->newLayout == VK_IMAGE_LAYOUT_PREINITIALIZED) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_0a00095c, "DS",
- "%s: Image Layout cannot be transitioned to UNDEFINED or PREINITIALIZED. %s", funcName,
- validation_error_map[VALIDATION_ERROR_0a00095c]);
+ "%s: Image Layout cannot be transitioned to UNDEFINED or PREINITIALIZED.", funcName);
}
if (image_data) {
@@ -7853,14 +7764,14 @@ static bool ValidateBarriers(layer_data *device_data, const char *funcName, GLOB
if (!ValidateAccessMaskPipelineStage(mem_barrier->srcAccessMask, src_stage_mask)) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_1b800940, "DS",
- "%s: pBufferMemBarriers[%d].srcAccessMask (0x%X) is not supported by srcStageMask (0x%X). %s", funcName,
- i, mem_barrier->srcAccessMask, src_stage_mask, validation_error_map[VALIDATION_ERROR_1b800940]);
+ "%s: pBufferMemBarriers[%d].srcAccessMask (0x%X) is not supported by srcStageMask (0x%X).", funcName, i,
+ mem_barrier->srcAccessMask, src_stage_mask);
}
if (!ValidateAccessMaskPipelineStage(mem_barrier->dstAccessMask, dst_stage_mask)) {
skip |= log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_1b800942, "DS",
- "%s: pBufferMemBarriers[%d].dstAccessMask (0x%X) is not supported by dstStageMask (0x%X). %s", funcName,
- i, mem_barrier->dstAccessMask, dst_stage_mask, validation_error_map[VALIDATION_ERROR_1b800942]);
+ "%s: pBufferMemBarriers[%d].dstAccessMask (0x%X) is not supported by dstStageMask (0x%X).", funcName, i,
+ mem_barrier->dstAccessMask, dst_stage_mask);
}
// Validate buffer barrier queue family indices
auto buffer_state = GetBufferState(device_data, mem_barrier->buffer);
@@ -7878,18 +7789,17 @@ static bool ValidateBarriers(layer_data *device_data, const char *funcName, GLOB
skip |= log_msg(
device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_01800946, "DS",
- "%s: Buffer Barrier 0x%" PRIx64 " has offset 0x%" PRIx64 " which is not less than total size 0x%" PRIx64 ". %s",
- funcName, HandleToUint64(mem_barrier->buffer), HandleToUint64(mem_barrier->offset), HandleToUint64(buffer_size),
- validation_error_map[VALIDATION_ERROR_01800946]);
+ "%s: Buffer Barrier 0x%" PRIx64 " has offset 0x%" PRIx64 " which is not less than total size 0x%" PRIx64 ".",
+ funcName, HandleToUint64(mem_barrier->buffer), HandleToUint64(mem_barrier->offset),
+ HandleToUint64(buffer_size));
} else if (mem_barrier->size != VK_WHOLE_SIZE && (mem_barrier->offset + mem_barrier->size > buffer_size)) {
skip |=
log_msg(device_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(cb_state->commandBuffer), __LINE__, VALIDATION_ERROR_0180094a, "DS",
"%s: Buffer Barrier 0x%" PRIx64 " has offset 0x%" PRIx64 " and size 0x%" PRIx64
- " whose sum is greater than total size 0x%" PRIx64 ". %s",
+ " whose sum is greater than total size 0x%" PRIx64 ".",
funcName, HandleToUint64(mem_barrier->buffer), HandleToUint64(mem_barrier->offset),
- HandleToUint64(mem_barrier->size), HandleToUint64(buffer_size),
- validation_error_map[VALIDATION_ERROR_0180094a]);
+ HandleToUint64(mem_barrier->size), HandleToUint64(buffer_size));
}
}
}
@@ -7926,8 +7836,8 @@ bool validateEventStageMask(VkQueue queue, GLOBAL_CB_NODE *pCB, uint32_t eventCo
HandleToUint64(pCB->commandBuffer), __LINE__, VALIDATION_ERROR_1e62d401, "DS",
"Submitting cmdbuffer with call to VkCmdWaitEvents using srcStageMask 0x%X which must be the bitwise OR of "
"the stageMask parameters used in calls to vkCmdSetEvent and VK_PIPELINE_STAGE_HOST_BIT if used with "
- "vkSetEvent but instead is 0x%X. %s",
- sourceStageMask, stageMask, validation_error_map[VALIDATION_ERROR_1e62d401]);
+ "vkSetEvent but instead is 0x%X.",
+ sourceStageMask, stageMask);
}
return skip;
}
@@ -7975,9 +7885,8 @@ bool CheckStageMaskQueueCompatibility(layer_data *dev_data, VkCommandBuffer comm
skip |=
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(command_buffer), __LINE__, error_code, "DL",
- "%s(): %s flag %s is not compatible with the queue family properties of this command buffer. %s",
- function, src_or_dest, string_VkPipelineStageFlagBits(static_cast<VkPipelineStageFlagBits>(item)),
- validation_error_map[error_code]);
+ "%s(): %s flag %s is not compatible with the queue family properties of this command buffer.", function,
+ src_or_dest, string_VkPipelineStageFlagBits(static_cast<VkPipelineStageFlagBits>(item)));
}
}
}
@@ -8214,8 +8123,8 @@ VKAPI_ATTR void VKAPI_CALL CmdEndQuery(VkCommandBuffer commandBuffer, VkQueryPoo
if (!cb_state->activeQueries.count(query)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1ae00652, "DS",
- "Ending a query before it was started: queryPool 0x%" PRIx64 ", index %d. %s",
- HandleToUint64(queryPool), slot, validation_error_map[VALIDATION_ERROR_1ae00652]);
+ "Ending a query before it was started: queryPool 0x%" PRIx64 ", index %d.", HandleToUint64(queryPool),
+ slot);
}
skip |= ValidateCmdQueueFlags(dev_data, cb_state, "VkCmdEndQuery()", VK_QUEUE_GRAPHICS_BIT | VK_QUEUE_COMPUTE_BIT,
VALIDATION_ERROR_1ae02415);
@@ -8346,7 +8255,7 @@ VKAPI_ATTR void VKAPI_CALL CmdPushConstants(VkCommandBuffer commandBuffer, VkPip
if (0 == stageFlags) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1bc2dc03, "DS",
- "vkCmdPushConstants() call has no stageFlags set. %s", validation_error_map[VALIDATION_ERROR_1bc2dc03]);
+ "vkCmdPushConstants() call has no stageFlags set.");
}
// Check if pipeline_layout VkPushConstantRange(s) overlapping offset, size have stageFlags set for each stage in the command
@@ -8365,9 +8274,9 @@ VKAPI_ATTR void VKAPI_CALL CmdPushConstants(VkCommandBuffer commandBuffer, VkPip
"vkCmdPushConstants(): stageFlags (0x%" PRIx32 ", offset (%" PRIu32 "), and size (%" PRIu32
"), "
"must contain all stages in overlapping VkPushConstantRange stageFlags (0x%" PRIx32
- "), offset (%" PRIu32 "), and size (%" PRIu32 ") in pipeline layout 0x%" PRIx64 ". %s",
+ "), offset (%" PRIu32 "), and size (%" PRIu32 ") in pipeline layout 0x%" PRIx64 ".",
(uint32_t)stageFlags, offset, size, (uint32_t)range.stageFlags, range.offset, range.size,
- HandleToUint64(layout), validation_error_map[VALIDATION_ERROR_1bc00e08]);
+ HandleToUint64(layout));
}
// Accumulate all stages we've found
@@ -8380,9 +8289,8 @@ VKAPI_ATTR void VKAPI_CALL CmdPushConstants(VkCommandBuffer commandBuffer, VkPip
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1bc00e06, "DS",
"vkCmdPushConstants(): stageFlags = 0x%" PRIx32 ", VkPushConstantRange in pipeline layout 0x%" PRIx64
- " overlapping offset = %d and size = %d, do not contain stageFlags 0x%" PRIx32 ". %s",
- (uint32_t)stageFlags, HandleToUint64(layout), offset, size, missing_stages,
- validation_error_map[VALIDATION_ERROR_1bc00e06]);
+ " overlapping offset = %d and size = %d, do not contain stageFlags 0x%" PRIx32 ".",
+ (uint32_t)stageFlags, HandleToUint64(layout), offset, size, missing_stages);
}
}
lock.unlock();
@@ -8432,9 +8340,8 @@ static bool MatchUsage(layer_data *dev_data, uint32_t count, const VkAttachmentR
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT,
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__, error_code, "DS",
"vkCreateFramebuffer: Framebuffer Attachment (%d) conflicts with the image's "
- "IMAGE_USAGE flags (%s). %s",
- attachments[attach].attachment, string_VkImageUsageFlagBits(usage_flag),
- validation_error_map[error_code]);
+ "IMAGE_USAGE flags (%s).",
+ attachments[attach].attachment, string_VkImageUsageFlagBits(usage_flag));
}
}
}
@@ -8463,9 +8370,8 @@ static bool ValidateFramebufferCreateInfo(layer_data *dev_data, const VkFramebuf
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
HandleToUint64(pCreateInfo->renderPass), __LINE__, VALIDATION_ERROR_094006d8, "DS",
"vkCreateFramebuffer(): VkFramebufferCreateInfo attachmentCount of %u does not match attachmentCount "
- "of %u of renderPass (0x%" PRIx64 ") being used to create Framebuffer. %s",
- pCreateInfo->attachmentCount, rpci->attachmentCount, HandleToUint64(pCreateInfo->renderPass),
- validation_error_map[VALIDATION_ERROR_094006d8]);
+ "of %u of renderPass (0x%" PRIx64 ") being used to create Framebuffer.",
+ pCreateInfo->attachmentCount, rpci->attachmentCount, HandleToUint64(pCreateInfo->renderPass));
} else {
// attachmentCounts match, so make sure corresponding attachment details line up
const VkImageView *image_views = pCreateInfo->pAttachments;
@@ -8477,9 +8383,9 @@ static bool ValidateFramebufferCreateInfo(layer_data *dev_data, const VkFramebuf
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
HandleToUint64(pCreateInfo->renderPass), __LINE__, VALIDATION_ERROR_094006e0, "DS",
"vkCreateFramebuffer(): VkFramebufferCreateInfo attachment #%u has format of %s that does not "
- "match the format of %s used by the corresponding attachment for renderPass (0x%" PRIx64 "). %s",
+ "match the format of %s used by the corresponding attachment for renderPass (0x%" PRIx64 ").",
i, string_VkFormat(ivci.format), string_VkFormat(rpci->pAttachments[i].format),
- HandleToUint64(pCreateInfo->renderPass), validation_error_map[VALIDATION_ERROR_094006e0]);
+ HandleToUint64(pCreateInfo->renderPass));
}
const VkImageCreateInfo *ici = &GetImageState(dev_data, ivci.image)->createInfo;
if (ici->samples != rpci->pAttachments[i].samples) {
@@ -8487,17 +8393,17 @@ static bool ValidateFramebufferCreateInfo(layer_data *dev_data, const VkFramebuf
dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT,
HandleToUint64(pCreateInfo->renderPass), __LINE__, VALIDATION_ERROR_094006e2, "DS",
"vkCreateFramebuffer(): VkFramebufferCreateInfo attachment #%u has %s samples that do not match the %s "
- "samples used by the corresponding attachment for renderPass (0x%" PRIx64 "). %s",
+ "samples used by the corresponding attachment for renderPass (0x%" PRIx64 ").",
i, string_VkSampleCountFlagBits(ici->samples), string_VkSampleCountFlagBits(rpci->pAttachments[i].samples),
- HandleToUint64(pCreateInfo->renderPass), validation_error_map[VALIDATION_ERROR_094006e2]);
+ HandleToUint64(pCreateInfo->renderPass));
}
// Verify that view only has a single mip level
if (ivci.subresourceRange.levelCount != 1) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
0, __LINE__, VALIDATION_ERROR_094006e6, "DS",
"vkCreateFramebuffer(): VkFramebufferCreateInfo attachment #%u has mip levelCount of %u but "
- "only a single mip level (levelCount == 1) is allowed when creating a Framebuffer. %s",
- i, ivci.subresourceRange.levelCount, validation_error_map[VALIDATION_ERROR_094006e6]);
+ "only a single mip level (levelCount == 1) is allowed when creating a Framebuffer.",
+ i, ivci.subresourceRange.levelCount);
}
const uint32_t mip_level = ivci.subresourceRange.baseMipLevel;
uint32_t mip_width = max(1u, ici->extent.width >> mip_level);
@@ -8511,10 +8417,9 @@ static bool ValidateFramebufferCreateInfo(layer_data *dev_data, const VkFramebuf
"attachment #%u, framebuffer:\n"
"width: %u, %u\n"
"height: %u, %u\n"
- "layerCount: %u, %u\n%s",
+ "layerCount: %u, %u\n",
i, ivci.subresourceRange.baseMipLevel, i, mip_width, pCreateInfo->width, mip_height,
- pCreateInfo->height, ivci.subresourceRange.layerCount, pCreateInfo->layers,
- validation_error_map[VALIDATION_ERROR_094006e4]);
+ pCreateInfo->height, ivci.subresourceRange.layerCount, pCreateInfo->layers);
}
if (((ivci.components.r != VK_COMPONENT_SWIZZLE_IDENTITY) && (ivci.components.r != VK_COMPONENT_SWIZZLE_R)) ||
((ivci.components.g != VK_COMPONENT_SWIZZLE_IDENTITY) && (ivci.components.g != VK_COMPONENT_SWIZZLE_G)) ||
@@ -8528,11 +8433,9 @@ static bool ValidateFramebufferCreateInfo(layer_data *dev_data, const VkFramebuf
"r swizzle = %s\n"
"g swizzle = %s\n"
"b swizzle = %s\n"
- "a swizzle = %s\n"
- "%s",
+ "a swizzle = %s\n",
i, string_VkComponentSwizzle(ivci.components.r), string_VkComponentSwizzle(ivci.components.g),
- string_VkComponentSwizzle(ivci.components.b), string_VkComponentSwizzle(ivci.components.a),
- validation_error_map[VALIDATION_ERROR_094006e8]);
+ string_VkComponentSwizzle(ivci.components.b), string_VkComponentSwizzle(ivci.components.a));
}
}
}
@@ -8558,44 +8461,38 @@ static bool ValidateFramebufferCreateInfo(layer_data *dev_data, const VkFramebuf
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_094006ec, "DS",
"vkCreateFramebuffer(): Requested VkFramebufferCreateInfo width exceeds physical device limits. Requested "
- "width: %u, device max: %u\n%s",
- pCreateInfo->width, dev_data->phys_dev_properties.properties.limits.maxFramebufferWidth,
- validation_error_map[VALIDATION_ERROR_094006ec]);
+ "width: %u, device max: %u\n",
+ pCreateInfo->width, dev_data->phys_dev_properties.properties.limits.maxFramebufferWidth);
}
if (pCreateInfo->height > dev_data->phys_dev_properties.properties.limits.maxFramebufferHeight) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_094006f0, "DS",
"vkCreateFramebuffer(): Requested VkFramebufferCreateInfo height exceeds physical device limits. Requested "
- "height: %u, device max: %u\n%s",
- pCreateInfo->height, dev_data->phys_dev_properties.properties.limits.maxFramebufferHeight,
- validation_error_map[VALIDATION_ERROR_094006f0]);
+ "height: %u, device max: %u\n",
+ pCreateInfo->height, dev_data->phys_dev_properties.properties.limits.maxFramebufferHeight);
}
if (pCreateInfo->layers > dev_data->phys_dev_properties.properties.limits.maxFramebufferLayers) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_094006f4, "DS",
"vkCreateFramebuffer(): Requested VkFramebufferCreateInfo layers exceeds physical device limits. Requested "
- "layers: %u, device max: %u\n%s",
- pCreateInfo->layers, dev_data->phys_dev_properties.properties.limits.maxFramebufferLayers,
- validation_error_map[VALIDATION_ERROR_094006f4]);
+ "layers: %u, device max: %u\n",
+ pCreateInfo->layers, dev_data->phys_dev_properties.properties.limits.maxFramebufferLayers);
}
// Verify FB dimensions are greater than zero
if (pCreateInfo->width <= 0) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_094006ea, "DS",
- "vkCreateFramebuffer(): Requested VkFramebufferCreateInfo width must be greater than zero. %s",
- validation_error_map[VALIDATION_ERROR_094006ea]);
+ "vkCreateFramebuffer(): Requested VkFramebufferCreateInfo width must be greater than zero.");
}
if (pCreateInfo->height <= 0) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_094006ee, "DS",
- "vkCreateFramebuffer(): Requested VkFramebufferCreateInfo height must be greater than zero. %s",
- validation_error_map[VALIDATION_ERROR_094006ee]);
+ "vkCreateFramebuffer(): Requested VkFramebufferCreateInfo height must be greater than zero.");
}
if (pCreateInfo->layers <= 0) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_094006f2, "DS",
- "vkCreateFramebuffer(): Requested VkFramebufferCreateInfo layers must be greater than zero. %s",
- validation_error_map[VALIDATION_ERROR_094006f2]);
+ "vkCreateFramebuffer(): Requested VkFramebufferCreateInfo layers must be greater than zero.");
}
return skip;
}
@@ -8791,14 +8688,14 @@ static bool ValidateDependencies(const layer_data *dev_data, FRAMEBUFFER_STATE c
if (!(pCreateInfo->pAttachments[attachment].flags & VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT,
HandleToUint64(framebuffer->framebuffer), __LINE__, VALIDATION_ERROR_12200682, "DS",
- "Attachment %d aliases attachment %d but doesn't set VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT. %s",
- attachment, other_attachment, validation_error_map[VALIDATION_ERROR_12200682]);
+ "Attachment %d aliases attachment %d but doesn't set VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT.",
+ attachment, other_attachment);
}
if (!(pCreateInfo->pAttachments[other_attachment].flags & VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT,
HandleToUint64(framebuffer->framebuffer), __LINE__, VALIDATION_ERROR_12200682, "DS",
- "Attachment %d aliases attachment %d but doesn't set VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT. %s",
- other_attachment, attachment, validation_error_map[VALIDATION_ERROR_12200682]);
+ "Attachment %d aliases attachment %d but doesn't set VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT.",
+ other_attachment, attachment);
}
}
}
@@ -8926,8 +8823,8 @@ static bool ValidateAttachmentIndex(layer_data *dev_data, uint32_t attachment, u
if (attachment >= attachment_count && attachment != VK_ATTACHMENT_UNUSED) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_12200684, "DS",
- "CreateRenderPass: %s attachment %d must be less than the total number of attachments %d. %s", type,
- attachment, attachment_count, validation_error_map[VALIDATION_ERROR_12200684]);
+ "CreateRenderPass: %s attachment %d must be less than the total number of attachments %d.", type,
+ attachment, attachment_count);
}
return skip;
}
@@ -8941,8 +8838,7 @@ static bool ValidateRenderpassAttachmentUsage(layer_data *dev_data, const VkRend
if (subpass.pipelineBindPoint != VK_PIPELINE_BIND_POINT_GRAPHICS) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_14000698, "DS",
- "CreateRenderPass: Pipeline bind point for subpass %d must be VK_PIPELINE_BIND_POINT_GRAPHICS. %s", i,
- validation_error_map[VALIDATION_ERROR_14000698]);
+ "CreateRenderPass: Pipeline bind point for subpass %d must be VK_PIPELINE_BIND_POINT_GRAPHICS.", i);
}
for (uint32_t j = 0; j < subpass.preserveAttachmentCount; ++j) {
@@ -8950,8 +8846,7 @@ static bool ValidateRenderpassAttachmentUsage(layer_data *dev_data, const VkRend
if (attachment == VK_ATTACHMENT_UNUSED) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_140006aa, "DS",
- "CreateRenderPass: Preserve attachment (%d) must not be VK_ATTACHMENT_UNUSED. %s", j,
- validation_error_map[VALIDATION_ERROR_140006aa]);
+ "CreateRenderPass: Preserve attachment (%d) must not be VK_ATTACHMENT_UNUSED.", j);
} else {
skip |= ValidateAttachmentIndex(dev_data, attachment, pCreateInfo->attachmentCount, "Preserve");
@@ -8967,8 +8862,8 @@ static bool ValidateRenderpassAttachmentUsage(layer_data *dev_data, const VkRend
skip |= log_msg(
dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__,
VALIDATION_ERROR_140006ac, "DS",
- "CreateRenderPass: subpass %u pPreserveAttachments[%u] (%u) must not be used elsewhere in the subpass. %s",
- i, j, attachment, validation_error_map[VALIDATION_ERROR_140006ac]);
+ "CreateRenderPass: subpass %u pPreserveAttachments[%u] (%u) must not be used elsewhere in the subpass.", i,
+ j, attachment);
}
}
}
@@ -8991,9 +8886,8 @@ static bool ValidateRenderpassAttachmentUsage(layer_data *dev_data, const VkRend
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
0, __LINE__, VALIDATION_ERROR_140006a2, "DS",
"CreateRenderPass: Subpass %u requests multisample resolve into attachment %u, which must "
- "have VK_SAMPLE_COUNT_1_BIT but has %s. %s",
- i, attachment, string_VkSampleCountFlagBits(pCreateInfo->pAttachments[attachment].samples),
- validation_error_map[VALIDATION_ERROR_140006a2]);
+ "have VK_SAMPLE_COUNT_1_BIT but has %s.",
+ i, attachment, string_VkSampleCountFlagBits(pCreateInfo->pAttachments[attachment].samples));
}
if (!skip && subpass.pResolveAttachments[j].attachment != VK_ATTACHMENT_UNUSED &&
@@ -9001,8 +8895,8 @@ static bool ValidateRenderpassAttachmentUsage(layer_data *dev_data, const VkRend
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
0, __LINE__, VALIDATION_ERROR_1400069e, "DS",
"CreateRenderPass: Subpass %u requests multisample resolve from attachment %u which has "
- "attachment=VK_ATTACHMENT_UNUSED. %s",
- i, attachment, validation_error_map[VALIDATION_ERROR_1400069e]);
+ "attachment=VK_ATTACHMENT_UNUSED.",
+ i, attachment);
}
}
attachment = subpass.pColorAttachments[j].attachment;
@@ -9015,20 +8909,19 @@ static bool ValidateRenderpassAttachmentUsage(layer_data *dev_data, const VkRend
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
0, __LINE__, VALIDATION_ERROR_140006a0, "DS",
"CreateRenderPass: Subpass %u requests multisample resolve from attachment %u which has "
- "VK_SAMPLE_COUNT_1_BIT. %s",
- i, attachment, validation_error_map[VALIDATION_ERROR_140006a0]);
+ "VK_SAMPLE_COUNT_1_BIT.",
+ i, attachment);
}
if (subpass_performs_resolve && subpass.pResolveAttachments[j].attachment != VK_ATTACHMENT_UNUSED) {
const auto &color_desc = pCreateInfo->pAttachments[attachment];
const auto &resolve_desc = pCreateInfo->pAttachments[subpass.pResolveAttachments[j].attachment];
if (color_desc.format != resolve_desc.format) {
- skip |=
- log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
- 0, __LINE__, VALIDATION_ERROR_140006a4, "DS",
- "CreateRenderPass: Subpass %u pColorAttachments[%u] resolves to an attachment with a "
- "different format. color format: %u, resolve format: %u. %s",
- i, j, color_desc.format, resolve_desc.format, validation_error_map[VALIDATION_ERROR_140006a4]);
+ skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT,
+ VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__, VALIDATION_ERROR_140006a4, "DS",
+ "CreateRenderPass: Subpass %u pColorAttachments[%u] resolves to an attachment with a "
+ "different format. color format: %u, resolve format: %u.",
+ i, j, color_desc.format, resolve_desc.format);
}
}
@@ -9040,10 +8933,9 @@ static bool ValidateRenderpassAttachmentUsage(layer_data *dev_data, const VkRend
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT,
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__, VALIDATION_ERROR_14000bc4, "DS",
"CreateRenderPass: Subpass %u pColorAttachments[%u] has %s which is larger than "
- "depth/stencil attachment %s. %s",
+ "depth/stencil attachment %s.",
i, j, string_VkSampleCountFlagBits(pCreateInfo->pAttachments[attachment].samples),
- string_VkSampleCountFlagBits(depth_stencil_sample_count),
- validation_error_map[VALIDATION_ERROR_14000bc4]);
+ string_VkSampleCountFlagBits(depth_stencil_sample_count));
}
}
}
@@ -9066,8 +8958,7 @@ static bool ValidateRenderpassAttachmentUsage(layer_data *dev_data, const VkRend
if (!dev_data->extensions.vk_amd_mixed_attachment_samples && sample_count && !IsPowerOfTwo(sample_count)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,
__LINE__, VALIDATION_ERROR_0082b401, "DS",
- "CreateRenderPass: Subpass %u attempts to render to attachments with inconsistent sample counts. %s",
- i, validation_error_map[VALIDATION_ERROR_0082b401]);
+ "CreateRenderPass: Subpass %u attempts to render to attachments with inconsistent sample counts.", i);
}
}
return skip;
@@ -9148,7 +9039,7 @@ static bool validatePrimaryCommandBuffer(const layer_data *dev_data, const GLOBA
if (pCB->createInfo.level != VK_COMMAND_BUFFER_LEVEL_PRIMARY) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(pCB->commandBuffer), __LINE__, error_code, "DS",
- "Cannot execute command %s on a secondary command buffer. %s", cmd_name, validation_error_map[error_code]);
+ "Cannot execute command %s on a secondary command buffer.", cmd_name);
}
return skip;
}
@@ -9240,9 +9131,9 @@ VKAPI_ATTR void VKAPI_CALL CmdBeginRenderPass(VkCommandBuffer commandBuffer, con
"renderPass 0x%" PRIx64
" that uses VK_ATTACHMENT_LOAD_OP_CLEAR is %u. Note that the pClearValues array is indexed by "
"attachment number so even if some pClearValues entries between 0 and %u correspond to attachments "
- "that aren't cleared they will be ignored. %s",
+ "that aren't cleared they will be ignored.",
pRenderPassBegin->clearValueCount, clear_op_size, HandleToUint64(render_pass_state->renderPass),
- clear_op_size, clear_op_size - 1, validation_error_map[VALIDATION_ERROR_1200070c]);
+ clear_op_size, clear_op_size - 1);
}
skip |= VerifyRenderAreaBounds(dev_data, pRenderPassBegin);
skip |= VerifyFramebufferAndRenderPassLayouts(dev_data, cb_node, pRenderPassBegin,
@@ -9294,8 +9185,7 @@ VKAPI_ATTR void VKAPI_CALL CmdNextSubpass(VkCommandBuffer commandBuffer, VkSubpa
if (pCB->activeSubpass == subpassCount - 1) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1b60071a, "DS",
- "vkCmdNextSubpass(): Attempted to advance beyond final subpass. %s",
- validation_error_map[VALIDATION_ERROR_1b60071a]);
+ "vkCmdNextSubpass(): Attempted to advance beyond final subpass.");
}
}
lock.unlock();
@@ -9326,8 +9216,7 @@ VKAPI_ATTR void VKAPI_CALL CmdEndRenderPass(VkCommandBuffer commandBuffer) {
if (pCB->activeSubpass != rp_state->createInfo.subpassCount - 1) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT,
VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, HandleToUint64(commandBuffer), __LINE__,
- VALIDATION_ERROR_1b00071c, "DS", "vkCmdEndRenderPass(): Called before reaching final subpass. %s",
- validation_error_map[VALIDATION_ERROR_1b00071c]);
+ VALIDATION_ERROR_1b00071c, "DS", "vkCmdEndRenderPass(): Called before reaching final subpass.");
}
for (size_t i = 0; i < rp_state->createInfo.attachmentCount; ++i) {
@@ -9384,9 +9273,8 @@ static bool validateFramebuffer(layer_data *dev_data, VkCommandBuffer primaryBuf
HandleToUint64(primaryBuffer), __LINE__, VALIDATION_ERROR_1b2000c6, "DS",
"vkCmdExecuteCommands() called w/ invalid secondary command buffer 0x%" PRIx64
" which has a framebuffer 0x%" PRIx64
- " that is not the same as the primary command buffer's current active framebuffer 0x%" PRIx64 ". %s",
- HandleToUint64(secondaryBuffer), HandleToUint64(secondary_fb), HandleToUint64(primary_fb),
- validation_error_map[VALIDATION_ERROR_1b2000c6]);
+ " that is not the same as the primary command buffer's current active framebuffer 0x%" PRIx64 ".",
+ HandleToUint64(secondaryBuffer), HandleToUint64(secondary_fb), HandleToUint64(primary_fb));
}
auto fb = GetFramebufferState(dev_data, secondary_fb);
if (!fb) {
@@ -9416,9 +9304,8 @@ static bool validateSecondaryCommandBufferState(layer_data *dev_data, GLOBAL_CB_
HandleToUint64(pCB->commandBuffer), __LINE__, VALIDATION_ERROR_1b2000d0, "DS",
"vkCmdExecuteCommands() called w/ invalid Cmd Buffer 0x%" PRIx64
" which has invalid active query pool 0x%" PRIx64
- ". Pipeline statistics is being queried so the command buffer must have all bits set on the queryPool. %s",
- HandleToUint64(pCB->commandBuffer), HandleToUint64(queryPoolData->first),
- validation_error_map[VALIDATION_ERROR_1b2000d0]);
+ ". Pipeline statistics is being queried so the command buffer must have all bits set on the queryPool.",
+ HandleToUint64(pCB->commandBuffer), HandleToUint64(queryPoolData->first));
}
}
activeTypes.insert(queryPoolData->second.createInfo.queryType);
@@ -9463,12 +9350,12 @@ VKAPI_ATTR void VKAPI_CALL CmdExecuteCommands(VkCommandBuffer commandBuffer, uin
pSubCB = GetCBNode(dev_data, pCommandBuffers[i]);
assert(pSubCB);
if (VK_COMMAND_BUFFER_LEVEL_PRIMARY == pSubCB->createInfo.level) {
- skip |= log_msg(
- dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
- HandleToUint64(pCommandBuffers[i]), __LINE__, VALIDATION_ERROR_1b2000b0, "DS",
- "vkCmdExecuteCommands() called w/ Primary Cmd Buffer 0x%" PRIx64
- " in element %u of pCommandBuffers array. All cmd buffers in pCommandBuffers array must be secondary. %s",
- HandleToUint64(pCommandBuffers[i]), i, validation_error_map[VALIDATION_ERROR_1b2000b0]);
+ skip |=
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
+ HandleToUint64(pCommandBuffers[i]), __LINE__, VALIDATION_ERROR_1b2000b0, "DS",
+ "vkCmdExecuteCommands() called w/ Primary Cmd Buffer 0x%" PRIx64
+ " in element %u of pCommandBuffers array. All cmd buffers in pCommandBuffers array must be secondary.",
+ HandleToUint64(pCommandBuffers[i]), i);
} else if (pCB->activeRenderPass) { // Secondary CB w/i RenderPass must have *CONTINUE_BIT set
if (pSubCB->beginInfo.pInheritanceInfo != nullptr) {
auto secondary_rp_state = GetRenderPassState(dev_data, pSubCB->beginInfo.pInheritanceInfo->renderPass);
@@ -9479,9 +9366,8 @@ VKAPI_ATTR void VKAPI_CALL CmdExecuteCommands(VkCommandBuffer commandBuffer, uin
"vkCmdExecuteCommands(): Secondary Command Buffer (0x%" PRIx64
") executed within render pass (0x%" PRIx64
") must have had vkBeginCommandBuffer() called w/ "
- "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT set. %s",
- HandleToUint64(pCommandBuffers[i]), HandleToUint64(pCB->activeRenderPass->renderPass),
- validation_error_map[VALIDATION_ERROR_1b2000c0]);
+ "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT set.",
+ HandleToUint64(pCommandBuffers[i]), HandleToUint64(pCB->activeRenderPass->renderPass));
} else {
// Make sure render pass is compatible with parent command buffer pass if has continue
if (pCB->activeRenderPass->renderPass != secondary_rp_state->renderPass) {
@@ -9510,8 +9396,8 @@ VKAPI_ATTR void VKAPI_CALL CmdExecuteCommands(VkCommandBuffer commandBuffer, uin
VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, HandleToUint64(pCB->commandBuffer), __LINE__,
VALIDATION_ERROR_1b2000b4, "DS",
"Attempt to simultaneously execute command buffer 0x%" PRIx64
- " without VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT set! %s",
- HandleToUint64(pCB->commandBuffer), validation_error_map[VALIDATION_ERROR_1b2000b4]);
+ " without VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT set!",
+ HandleToUint64(pCB->commandBuffer));
}
if (pCB->beginInfo.flags & VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT) {
// Warn that non-simultaneous secondary cmd buffer renders primary non-simultaneous
@@ -9532,8 +9418,8 @@ VKAPI_ATTR void VKAPI_CALL CmdExecuteCommands(VkCommandBuffer commandBuffer, uin
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
HandleToUint64(pCommandBuffers[i]), __LINE__, VALIDATION_ERROR_1b2000ca, "DS",
"vkCmdExecuteCommands(): Secondary Command Buffer (0x%" PRIx64
- ") cannot be submitted with a query in flight and inherited queries not supported on this device. %s",
- HandleToUint64(pCommandBuffers[i]), validation_error_map[VALIDATION_ERROR_1b2000ca]);
+ ") cannot be submitted with a query in flight and inherited queries not supported on this device.",
+ HandleToUint64(pCommandBuffers[i]));
}
// TODO: separate validate from update! This is very tangled.
// Propagate layout transitions to the primary cmd buffer
@@ -9589,8 +9475,8 @@ VKAPI_ATTR VkResult VKAPI_CALL MapMemory(VkDevice device, VkDeviceMemory mem, Vk
VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT) == 0) {
skip = log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem), __LINE__, VALIDATION_ERROR_31200554, "MEM",
- "Mapping Memory without VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT set: mem obj 0x%" PRIx64 ". %s",
- HandleToUint64(mem), validation_error_map[VALIDATION_ERROR_31200554]);
+ "Mapping Memory without VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT set: mem obj 0x%" PRIx64 ".",
+ HandleToUint64(mem));
}
}
skip |= ValidateMapMemRange(dev_data, mem, offset, size);
@@ -9629,13 +9515,12 @@ static bool validateMemoryIsMapped(layer_data *dev_data, const char *funcName, u
if (mem_info) {
if (pMemRanges[i].size == VK_WHOLE_SIZE) {
if (mem_info->mem_range.offset > pMemRanges[i].offset) {
- skip |=
- log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
- HandleToUint64(pMemRanges[i].memory), __LINE__, VALIDATION_ERROR_0c20055c, "MEM",
- "%s: Flush/Invalidate offset (" PRINTF_SIZE_T_SPECIFIER
- ") is less than Memory Object's offset (" PRINTF_SIZE_T_SPECIFIER "). %s",
- funcName, static_cast<size_t>(pMemRanges[i].offset),
- static_cast<size_t>(mem_info->mem_range.offset), validation_error_map[VALIDATION_ERROR_0c20055c]);
+ skip |= log_msg(
+ dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
+ HandleToUint64(pMemRanges[i].memory), __LINE__, VALIDATION_ERROR_0c20055c, "MEM",
+ "%s: Flush/Invalidate offset (" PRINTF_SIZE_T_SPECIFIER
+ ") is less than Memory Object's offset (" PRINTF_SIZE_T_SPECIFIER ").",
+ funcName, static_cast<size_t>(pMemRanges[i].offset), static_cast<size_t>(mem_info->mem_range.offset));
}
} else {
const uint64_t data_end = (mem_info->mem_range.size == VK_WHOLE_SIZE)
@@ -9647,10 +9532,9 @@ static bool validateMemoryIsMapped(layer_data *dev_data, const char *funcName, u
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(pMemRanges[i].memory), __LINE__, VALIDATION_ERROR_0c20055a, "MEM",
"%s: Flush/Invalidate size or offset (" PRINTF_SIZE_T_SPECIFIER ", " PRINTF_SIZE_T_SPECIFIER
- ") exceed the Memory Object's upper-bound (" PRINTF_SIZE_T_SPECIFIER "). %s",
+ ") exceed the Memory Object's upper-bound (" PRINTF_SIZE_T_SPECIFIER ").",
funcName, static_cast<size_t>(pMemRanges[i].offset + pMemRanges[i].size),
- static_cast<size_t>(pMemRanges[i].offset), static_cast<size_t>(data_end),
- validation_error_map[VALIDATION_ERROR_0c20055a]);
+ static_cast<size_t>(pMemRanges[i].offset), static_cast<size_t>(data_end));
}
}
}
@@ -9714,15 +9598,15 @@ static bool ValidateMappedMemoryRangeDeviceLimits(layer_data *dev_data, const ch
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem_ranges->memory), __LINE__, VALIDATION_ERROR_0c20055e, "MEM",
"%s: Offset in pMemRanges[%d] is 0x%" PRIxLEAST64
- ", which is not a multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize (0x%" PRIxLEAST64 "). %s",
- func_name, i, mem_ranges[i].offset, atom_size, validation_error_map[VALIDATION_ERROR_0c20055e]);
+ ", which is not a multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize (0x%" PRIxLEAST64 ").",
+ func_name, i, mem_ranges[i].offset, atom_size);
}
if ((mem_ranges[i].size != VK_WHOLE_SIZE) && (SafeModulo(mem_ranges[i].size, atom_size) != 0)) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT,
HandleToUint64(mem_ranges->memory), __LINE__, VALIDATION_ERROR_0c200adc, "MEM",
"%s: Size in pMemRanges[%d] is 0x%" PRIxLEAST64
- ", which is not a multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize (0x%" PRIxLEAST64 "). %s",
- func_name, i, mem_ranges[i].size, atom_size, validation_error_map[VALIDATION_ERROR_0c200adc]);
+ ", which is not a multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize (0x%" PRIxLEAST64 ").",
+ func_name, i, mem_ranges[i].size, atom_size);
}
}
return skip;
@@ -9815,9 +9699,8 @@ static bool PreCallValidateBindImageMemory(layer_data *dev_data, VkImage image,
image_handle, __LINE__, VALIDATION_ERROR_17400830, "DS",
"%s: memoryOffset is 0x%" PRIxLEAST64
" but must be an integer multiple of the VkMemoryRequirements::alignment value 0x%" PRIxLEAST64
- ", returned from a call to vkGetImageMemoryRequirements with image. %s",
- api_name, memoryOffset, image_state->requirements.alignment,
- validation_error_map[VALIDATION_ERROR_17400830]);
+ ", returned from a call to vkGetImageMemoryRequirements with image.",
+ api_name, memoryOffset, image_state->requirements.alignment);
}
if (mem_info) {
@@ -9827,27 +9710,24 @@ static bool PreCallValidateBindImageMemory(layer_data *dev_data, VkImage image,
image_handle, __LINE__, VALIDATION_ERROR_17400832, "DS",
"%s: memory size minus memoryOffset is 0x%" PRIxLEAST64
" but must be at least as large as VkMemoryRequirements::size value 0x%" PRIxLEAST64
- ", returned from a call to vkGetImageMemoryRequirements with image. %s",
- api_name, mem_info->alloc_info.allocationSize - memoryOffset, image_state->requirements.size,
- validation_error_map[VALIDATION_ERROR_17400832]);
+ ", returned from a call to vkGetImageMemoryRequirements with image.",
+ api_name, mem_info->alloc_info.allocationSize - memoryOffset, image_state->requirements.size);
}
// Validate dedicated allocation
if (mem_info->is_dedicated && ((mem_info->dedicated_image != image) || (memoryOffset != 0))) {
// TODO: Add vkBindImageMemory2KHR error message when added to spec.
auto validation_error = VALIDATION_ERROR_UNDEFINED;
- const char *validation_error_msg = "";
if (strcmp(api_name, "vkBindImageMemory()") == 0) {
validation_error = VALIDATION_ERROR_17400bca;
- validation_error_msg = validation_error_map[validation_error];
}
- skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT,
- image_handle, __LINE__, validation_error, "DS",
- "%s: for dedicated memory allocation 0x%" PRIxLEAST64
- ", VkMemoryDedicatedAllocateInfoKHR::image 0x%" PRIXLEAST64
- " must be equal to image 0x%" PRIxLEAST64 " and memoryOffset 0x%" PRIxLEAST64 " must be zero. %s",
- api_name, HandleToUint64(mem), HandleToUint64(mem_info->dedicated_image), image_handle,
- memoryOffset, validation_error_msg);
+ skip |=
+ log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT,
+ image_handle, __LINE__, validation_error, "DS",
+ "%s: for dedicated memory allocation 0x%" PRIxLEAST64
+ ", VkMemoryDedicatedAllocateInfoKHR::image 0x%" PRIXLEAST64 " must be equal to image 0x%" PRIxLEAST64
+ " and memoryOffset 0x%" PRIxLEAST64 " must be zero.",
+ api_name, HandleToUint64(mem), HandleToUint64(mem_info->dedicated_image), image_handle, memoryOffset);
}
}
}
@@ -10439,8 +10319,8 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009ec, "DS",
"%s: pCreateInfo->surface is not known at this time to be supported for presentation by this device. The "
"vkGetPhysicalDeviceSurfaceSupportKHR() must be called beforehand, and it must return VK_TRUE support with "
- "this surface for at least one queue family of this device. %s",
- func_name, validation_error_map[VALIDATION_ERROR_146009ec]))
+ "this surface for at least one queue family of this device.",
+ func_name))
return true;
}
}
@@ -10461,8 +10341,8 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
if ((pCreateInfo->imageExtent.width == 0) || (pCreateInfo->imageExtent.height == 0)) {
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_14600d32, "DS",
- "%s: pCreateInfo->imageExtent = (%d, %d) which is illegal. %s", func_name, pCreateInfo->imageExtent.width,
- pCreateInfo->imageExtent.height, validation_error_map[VALIDATION_ERROR_14600d32]))
+ "%s: pCreateInfo->imageExtent = (%d, %d) which is illegal.", func_name, pCreateInfo->imageExtent.width,
+ pCreateInfo->imageExtent.height))
return true;
}
@@ -10479,9 +10359,8 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009ee, "DS",
"%s called with minImageCount = %d, which is outside the bounds returned by "
- "vkGetPhysicalDeviceSurfaceCapabilitiesKHR() (i.e. minImageCount = %d, maxImageCount = %d). %s",
- func_name, pCreateInfo->minImageCount, capabilities.minImageCount, capabilities.maxImageCount,
- validation_error_map[VALIDATION_ERROR_146009ee]))
+ "vkGetPhysicalDeviceSurfaceCapabilitiesKHR() (i.e. minImageCount = %d, maxImageCount = %d).",
+ func_name, pCreateInfo->minImageCount, capabilities.minImageCount, capabilities.maxImageCount))
return true;
}
@@ -10489,9 +10368,8 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009f0, "DS",
"%s called with minImageCount = %d, which is outside the bounds returned by "
- "vkGetPhysicalDeviceSurfaceCapabilitiesKHR() (i.e. minImageCount = %d, maxImageCount = %d). %s",
- func_name, pCreateInfo->minImageCount, capabilities.minImageCount, capabilities.maxImageCount,
- validation_error_map[VALIDATION_ERROR_146009f0]))
+ "vkGetPhysicalDeviceSurfaceCapabilitiesKHR() (i.e. minImageCount = %d, maxImageCount = %d).",
+ func_name, pCreateInfo->minImageCount, capabilities.minImageCount, capabilities.maxImageCount))
return true;
}
@@ -10504,11 +10382,11 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009f4, "DS",
"%s called with imageExtent = (%d,%d), which is outside the bounds returned by "
"vkGetPhysicalDeviceSurfaceCapabilitiesKHR(): currentExtent = (%d,%d), minImageExtent = (%d,%d), "
- "maxImageExtent = (%d,%d). %s",
+ "maxImageExtent = (%d,%d).",
func_name, pCreateInfo->imageExtent.width, pCreateInfo->imageExtent.height,
capabilities.currentExtent.width, capabilities.currentExtent.height, capabilities.minImageExtent.width,
- capabilities.minImageExtent.height, capabilities.maxImageExtent.width, capabilities.maxImageExtent.height,
- validation_error_map[VALIDATION_ERROR_146009f4]))
+ capabilities.minImageExtent.height, capabilities.maxImageExtent.width,
+ capabilities.maxImageExtent.height))
return true;
}
// pCreateInfo->preTransform should have exactly one bit set, and that bit must also be set in
@@ -10533,8 +10411,7 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
}
// Log the message that we've built up:
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
- HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009fe, "DS", "%s. %s", errorString.c_str(),
- validation_error_map[VALIDATION_ERROR_146009fe]))
+ HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009fe, "DS", "%s.", errorString.c_str()))
return true;
}
@@ -10560,26 +10437,23 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
}
// Log the message that we've built up:
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
- HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_14600a00, "DS", "%s. %s", errorString.c_str(),
- validation_error_map[VALIDATION_ERROR_14600a00]))
+ HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_14600a00, "DS", "%s.", errorString.c_str()))
return true;
}
// Validate pCreateInfo->imageArrayLayers against VkSurfaceCapabilitiesKHR::maxImageArrayLayers:
if (pCreateInfo->imageArrayLayers > capabilities.maxImageArrayLayers) {
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009f6, "DS",
- "%s called with a non-supported imageArrayLayers (i.e. %d). Maximum value is %d. %s", func_name,
- pCreateInfo->imageArrayLayers, capabilities.maxImageArrayLayers,
- validation_error_map[VALIDATION_ERROR_146009f6]))
+ "%s called with a non-supported imageArrayLayers (i.e. %d). Maximum value is %d.", func_name,
+ pCreateInfo->imageArrayLayers, capabilities.maxImageArrayLayers))
return true;
}
// Validate pCreateInfo->imageUsage against VkSurfaceCapabilitiesKHR::supportedUsageFlags:
if (pCreateInfo->imageUsage != (pCreateInfo->imageUsage & capabilities.supportedUsageFlags)) {
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009f8, "DS",
- "%s called with a non-supported pCreateInfo->imageUsage (i.e. 0x%08x). Supported flag bits are 0x%08x. %s",
- func_name, pCreateInfo->imageUsage, capabilities.supportedUsageFlags,
- validation_error_map[VALIDATION_ERROR_146009f8]))
+ "%s called with a non-supported pCreateInfo->imageUsage (i.e. 0x%08x). Supported flag bits are 0x%08x.",
+ func_name, pCreateInfo->imageUsage, capabilities.supportedUsageFlags))
return true;
}
}
@@ -10613,15 +10487,15 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
if (!foundFormat) {
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009f2, "DS",
- "%s called with a non-supported pCreateInfo->imageFormat (i.e. %d). %s", func_name,
- pCreateInfo->imageFormat, validation_error_map[VALIDATION_ERROR_146009f2]))
+ "%s called with a non-supported pCreateInfo->imageFormat (i.e. %d).", func_name,
+ pCreateInfo->imageFormat))
return true;
}
if (!foundColorSpace) {
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_146009f2, "DS",
- "%s called with a non-supported pCreateInfo->imageColorSpace (i.e. %d). %s", func_name,
- pCreateInfo->imageColorSpace, validation_error_map[VALIDATION_ERROR_146009f2]))
+ "%s called with a non-supported pCreateInfo->imageColorSpace (i.e. %d).", func_name,
+ pCreateInfo->imageColorSpace))
return true;
}
}
@@ -10643,8 +10517,8 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
if (!foundMatch) {
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_14600a02, "DS",
- "%s called with a non-supported presentMode (i.e. %s). %s", func_name,
- string_VkPresentModeKHR(pCreateInfo->presentMode), validation_error_map[VALIDATION_ERROR_14600a02]))
+ "%s called with a non-supported presentMode (i.e. %s).", func_name,
+ string_VkPresentModeKHR(pCreateInfo->presentMode)))
return true;
}
}
@@ -10662,9 +10536,8 @@ static bool PreCallValidateCreateSwapchainKHR(layer_data *dev_data, const char *
if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT,
HandleToUint64(dev_data->device), __LINE__, VALIDATION_ERROR_14600ace, "DS",
"%s called with presentMode %s, but minImageCount value is %d. For shared presentable image, minImageCount "
- "must be 1. %s",
- func_name, string_VkPresentModeKHR(pCreateInfo->presentMode), pCreateInfo->minImageCount,
- validation_error_map[VALIDATION_ERROR_14600ace]))
+ "must be 1.",
+ func_name, string_VkPresentModeKHR(pCreateInfo->presentMode), pCreateInfo->minImageCount))
return true;
}
}
@@ -10890,8 +10763,8 @@ VKAPI_ATTR VkResult VKAPI_CALL QueuePresentKHR(VkQueue queue, const VkPresentInf
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT,
HandleToUint64(queue), __LINE__, VALIDATION_ERROR_11200a20, "DS",
"Images passed to present must be in layout VK_IMAGE_LAYOUT_PRESENT_SRC_KHR or "
- "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR but is in %s. %s",
- string_VkImageLayout(layout), validation_error_map[VALIDATION_ERROR_11200a20]);
+ "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR but is in %s.",
+ string_VkImageLayout(layout));
}
}
}
@@ -10913,8 +10786,7 @@ VKAPI_ATTR VkResult VKAPI_CALL QueuePresentKHR(VkQueue queue, const VkPresentInf
skip |=
log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT,
HandleToUint64(pPresentInfo->pSwapchains[i]), __LINE__, VALIDATION_ERROR_31800a18, "DS",
- "vkQueuePresentKHR: Presenting image on queue that cannot present to this surface. %s",
- validation_error_map[VALIDATION_ERROR_31800a18]);
+ "vkQueuePresentKHR: Presenting image on queue that cannot present to this surface.");
}
}
}
@@ -10935,9 +10807,8 @@ VKAPI_ATTR VkResult VKAPI_CALL QueuePresentKHR(VkQueue queue, const VkPresentInf
__LINE__, VALIDATION_ERROR_11e009da, "DS",
"vkQueuePresentKHR(): For VkPresentRegionKHR down pNext chain, "
"pRegion[%i].pRectangles[%i], the sum of offset.x (%i) and extent.width (%i) is greater "
- "than the corresponding swapchain's imageExtent.width (%i). %s",
- i, j, rect.offset.x, rect.extent.width, swapchain_data->createInfo.imageExtent.width,
- validation_error_map[VALIDATION_ERROR_11e009da]);
+ "than the corresponding swapchain's imageExtent.width (%i).",
+ i, j, rect.offset.x, rect.extent.width, swapchain_data->createInfo.imageExtent.width);
}
if ((rect.offset.y + rect.extent.height) > swapchain_data->createInfo.imageExtent.height) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT,
@@ -10945,18 +10816,16 @@ VKAPI_ATTR VkResult VKAPI_CALL QueuePresentKHR(VkQueue queue, const VkPresentInf
__LINE__, VALIDATION_ERROR_11e009da, "DS",
"vkQueuePresentKHR(): For VkPresentRegionKHR down pNext chain, "
"pRegion[%i].pRectangles[%i], the sum of offset.y (%i) and extent.height (%i) is greater "
- "than the corresponding swapchain's imageExtent.height (%i). %s",
- i, j, rect.offset.y, rect.extent.height, swapchain_data->createInfo.imageExtent.height,
- validation_error_map[VALIDATION_ERROR_11e009da]);
+ "than the corresponding swapchain's imageExtent.height (%i).",
+ i, j, rect.offset.y, rect.extent.height, swapchain_data->createInfo.imageExtent.height);
}
if (rect.layer > swapchain_data->createInfo.imageArrayLayers) {
skip |= log_msg(
dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT,
HandleToUint64(pPresentInfo->pSwapchains[i]), __LINE__, VALIDATION_ERROR_11e009dc, "DS",
"vkQueuePresentKHR(): For VkPresentRegionKHR down pNext chain, pRegion[%i].pRectangles[%i], the layer "
- "(%i) is greater than the corresponding swapchain's imageArrayLayers (%i). %s",
- i, j, rect.layer, swapchain_data->createInfo.imageArrayLayers,
- validation_error_map[VALIDATION_ERROR_11e009dc]);
+ "(%i) is greater than the corresponding swapchain's imageArrayLayers (%i).",
+ i, j, rect.layer, swapchain_data->createInfo.imageArrayLayers);
}
}
}
@@ -11102,8 +10971,7 @@ static bool PreCallValidateAcquireNextImageKHR(layer_data *dev_data, VkDevice de
if (pSemaphore && pSemaphore->scope == kSyncScopeInternal && pSemaphore->signaled) {
skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT,
HandleToUint64(semaphore), __LINE__, VALIDATION_ERROR_16400a0c, "DS",
- "vkAcquireNextImageKHR: Semaphore must not be currently signaled or in a wait state. %s",
- validation_error_map[VALIDATION_ERROR_16400a0c]);
+ "vkAcquireNextImageKHR: Semaphore must not be currently signaled or in a wait state.");
}
auto pFence = GetFenceNode(dev_data, fence);
@@ -11408,8 +11276,7 @@ VKAPI_ATTR void VKAPI_CALL DestroySurfaceKHR(VkInstance instance, VkSurfaceKHR s
if ((surface_state) && (surface_state->swapchain)) {
skip |= log_msg(instance_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT,
HandleToUint64(instance), __LINE__, VALIDATION_ERROR_26c009e4, "DS",
- "vkDestroySurfaceKHR() called before its associated VkSwapchainKHR was destroyed. %s",
- validation_error_map[VALIDATION_ERROR_26c009e4]);
+ "vkDestroySurfaceKHR() called before its associated VkSwapchainKHR was destroyed.");
}
instance_data->surface_map.erase(surface);
lock.unlock();
@@ -12263,8 +12130,8 @@ static bool ValidateGetPhysicalDeviceDisplayPlanePropertiesKHRQuery(instance_lay
instance_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT,
HandleToUint64(physicalDevice), __LINE__, VALIDATION_ERROR_29c009c2, "DL",
"%s(): planeIndex must be in the range [0, %d] that was returned by vkGetPhysicalDeviceDisplayPlanePropertiesKHR. "
- "Do you have the plane index hardcoded? %s",
- api_name, physical_device_state->display_plane_property_count - 1, validation_error_map[VALIDATION_ERROR_29c009c2]);
+ "Do you have the plane index hardcoded?",
+ api_name, physical_device_state->display_plane_property_count - 1);
}
}
return skip;