Skip to content

Commit

Permalink
Fix basic_draw tests with maintenance7 but not nested support
Browse files Browse the repository at this point in the history
maintenance7 does not include support for VK_EXT_nested_command_buffer,
but the basic_draw tests are written assuming that it does.

This change removes that errant assumption from the code.

Affects:
dEQP-VK.draw.*nested*basic_draw*

VK-GL-CTS issue: 5263
Components: Vulkan

Change-Id: Ibdb31a7c2896b24a7097fadc4fdfe6fb705dea36
  • Loading branch information
gary-sweet authored and lordalcol committed Aug 30, 2024
1 parent e7211d5 commit 3037465
Showing 1 changed file with 8 additions and 18 deletions.
26 changes: 8 additions & 18 deletions external/vulkancts/modules/vulkan/draw/vktBasicDrawTests.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -798,24 +798,14 @@ void DrawTestCase<T>::checkSupport(Context &context) const

if (m_data.groupParams.nestedSecondaryCmdBuffer)
{
bool maintenance7 = false;
if (context.isDeviceFunctionalitySupported("VK_KHR_maintenance7"))
{
const auto &features =
*vk::findStructure<vk::VkPhysicalDeviceMaintenance7FeaturesKHR>(&context.getDeviceFeatures2());
maintenance7 = features.maintenance7;
}
if (!maintenance7)
{
context.requireDeviceFunctionality("VK_EXT_nested_command_buffer");
const auto &features =
*vk::findStructure<vk::VkPhysicalDeviceNestedCommandBufferFeaturesEXT>(&context.getDeviceFeatures2());
if (!features.nestedCommandBuffer)
TCU_THROW(NotSupportedError, "nestedCommandBuffer is not supported");
if (!features.nestedCommandBufferRendering)
TCU_THROW(NotSupportedError, "nestedCommandBufferRendering is not supported, so "
"VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT cannot be used");
}
context.requireDeviceFunctionality("VK_EXT_nested_command_buffer");
const auto &features =
*vk::findStructure<vk::VkPhysicalDeviceNestedCommandBufferFeaturesEXT>(&context.getDeviceFeatures2());
if (!features.nestedCommandBuffer)
TCU_THROW(NotSupportedError, "nestedCommandBuffer is not supported");
if (!features.nestedCommandBufferRendering)
TCU_THROW(NotSupportedError, "nestedCommandBufferRendering is not supported, so "
"VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT cannot be used");
}

if (m_data.topology == vk::VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN &&
Expand Down

0 comments on commit 3037465

Please sign in to comment.