My test code that incorrectly creates an instance with 367.57 driver
TEST_F(Instance, CreateWithUnsupportedLayer) {
test::AppInfo app;
app.fuse();
test::CreateInfo info(app);
info.appendLayer("Unsupported layer name");
ASSERT_EQ(VK_ERROR_LAYER_NOT_PRESENT,
vkCreateInstance(info, nullptr, &instance_));
EXPECT_EQ(nullptr, instance_);
}
https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#vkCreateInstance
“If a specified layer cannot be found, no VkInstance will be created and the function will return VK_ERROR_LAYER_NOT_PRESENT.”
The crash cannot happen when using linux loader between application and driver. But I’m checking my test code also directly against drivers which exposes some hidden issues.