From f029882e775ae9657885190086e7072f72a9bfe7 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Wed, 2 Nov 2016 16:58:15 +1300 Subject: layers: Move platform WSI extension checks from swapchain to PV We want to do all extension checks in PV-- we'll return a good FP for anything we recognize, and complain upfront if the appropriate extension wasn't enabled. Signed-off-by: Chris Forbes --- layers/parameter_validation.cpp | 173 ++++++++++++++++++++++++++++++------ layers/parameter_validation_utils.h | 3 + layers/swapchain.cpp | 67 -------------- 3 files changed, 147 insertions(+), 96 deletions(-) diff --git a/layers/parameter_validation.cpp b/layers/parameter_validation.cpp index 9434ab0a..3e1812e9 100644 --- a/layers/parameter_validation.cpp +++ b/layers/parameter_validation.cpp @@ -4902,8 +4902,17 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateWin32SurfaceKHR(VkInstance instance, const layer_data *my_data = get_my_data_ptr(get_dispatch_key(instance), layer_data_map); assert(my_data != NULL); + bool skip_call = false; + + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, instance)].win32_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, + reinterpret_cast(instance), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkCreateWin32SurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_WIN32_SURFACE_EXTENSION_NAME); + } - bool skip_call = parameter_validation_vkCreateWin32SurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); + skip_call |= parameter_validation_vkCreateWin32SurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); if (!skip_call) { result = @@ -4914,6 +4923,33 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateWin32SurfaceKHR(VkInstance instance, const return result; } + +VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice physicalDevice, + uint32_t queueFamilyIndex) +{ + VkBool32 result = false; + + layer_data *my_data = get_my_data_ptr(get_dispatch_key(physicalDevice), layer_data_map); + assert(my_data != NULL); + bool skip_call = false; + + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, physicalDevice)].win32_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, + reinterpret_cast(physicalDevice), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkGetPhysicalDeviceWin32PresentationSupportKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_WIN32_SURFACE_EXTENSION_NAME); + } + + skip_call |= parameter_validation_vkGetPhysicalDeviceWin32PresentationSupportKHR(physicalDevice, queueFamilyIndex); + + if (!skip_call) { + result = get_dispatch_table(pc_instance_table_map, physicalDevice)->GetPhysicalDeviceWin32PresentationSupportKHR( + physicalDevice, queueFamilyIndex); + } + + return result; +} #endif // VK_USE_PLATFORM_WIN32_KHR #ifdef VK_USE_PLATFORM_XCB_KHR @@ -4923,8 +4959,17 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateXcbSurfaceKHR(VkInstance instance, const Vk layer_data *my_data = get_my_data_ptr(get_dispatch_key(instance), layer_data_map); assert(my_data != NULL); + bool skip_call = false; - bool skip_call = parameter_validation_vkCreateXcbSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, instance)].xcb_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, + reinterpret_cast(instance), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkCreateXcbSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_XCB_SURFACE_EXTENSION_NAME); + } + + skip_call |= parameter_validation_vkCreateXcbSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); if (!skip_call) { result = @@ -4943,8 +4988,17 @@ VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceXcbPresentationSupportKHR(VkPhys layer_data *my_data = get_my_data_ptr(get_dispatch_key(physicalDevice), layer_data_map); assert(my_data != NULL); + bool skip_call = false; - bool skip_call = parameter_validation_vkGetPhysicalDeviceXcbPresentationSupportKHR(my_data->report_data, queueFamilyIndex, + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, physicalDevice)].xcb_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, + reinterpret_cast(physicalDevice), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkGetPhysicalDeviceXcbPresentationSupportKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_XCB_SURFACE_EXTENSION_NAME); + } + + skip_call |= parameter_validation_vkGetPhysicalDeviceXcbPresentationSupportKHR(my_data->report_data, queueFamilyIndex, connection, visual_id); if (!skip_call) { @@ -4963,8 +5017,17 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateXlibSurfaceKHR(VkInstance instance, const V layer_data *my_data = get_my_data_ptr(get_dispatch_key(instance), layer_data_map); assert(my_data != NULL); + bool skip_call = false; - bool skip_call = parameter_validation_vkCreateXlibSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, instance)].xlib_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, + reinterpret_cast(instance), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkCreateXlibSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_XLIB_SURFACE_EXTENSION_NAME); + } + + skip_call |= parameter_validation_vkCreateXlibSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); if (!skip_call) { result = @@ -4983,9 +5046,17 @@ VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceXlibPresentationSupportKHR(VkPhy layer_data *my_data = get_my_data_ptr(get_dispatch_key(physicalDevice), layer_data_map); assert(my_data != NULL); + bool skip_call = false; + + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, physicalDevice)].xlib_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, + reinterpret_cast(physicalDevice), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkGetPhysicalDeviceXlibPresentationSupportKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_XLIB_SURFACE_EXTENSION_NAME); + } - bool skip_call = - parameter_validation_vkGetPhysicalDeviceXlibPresentationSupportKHR(my_data->report_data, queueFamilyIndex, dpy, visualID); + skip_call |= parameter_validation_vkGetPhysicalDeviceXlibPresentationSupportKHR(my_data->report_data, queueFamilyIndex, dpy, visualID); if (!skip_call) { result = get_dispatch_table(pc_instance_table_map, physicalDevice) @@ -5002,8 +5073,17 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateMirSurfaceKHR(VkInstance instance, const Vk layer_data *my_data = get_my_data_ptr(get_dispatch_key(instance), layer_data_map); assert(my_data != NULL); + bool skip_call = false; - bool skip_call = parameter_validation_vkCreateMirSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, instance)].mir_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, + reinterpret_cast(instance), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkCreateMirSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_MIR_SURFACE_EXTENSION_NAME); + } + + skip_call |= parameter_validation_vkCreateMirSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); if (!skip_call) { result = @@ -5022,13 +5102,22 @@ VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceMirPresentationSupportKHR(VkPhys layer_data *my_data = get_my_data_ptr(get_dispatch_key(physicalDevice), layer_data_map); assert(my_data != NULL); - bool skip_call = - parameter_validation_vkGetPhysicalDeviceMirPresentationSupportKHR(my_data->report_data, queueFamilyIndex, connection); + bool skip_call = false; + + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, physicalDevice)].mir_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, + reinterpret_cast(physicalDevice), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkGetPhysicalDeviceMirPresentationSupportKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_MIR_SURFACE_EXTENSION_NAME); + } + skip_call |= parameter_validation_vkGetPhysicalDeviceMirPresentationSupportKHR(my_data->report_data, queueFamilyIndex, connection); if (!skip_call) { result = get_dispatch_table(pc_instance_table_map, physicalDevice) ->GetPhysicalDeviceMirPresentationSupportKHR(physicalDevice, queueFamilyIndex, connection); } + return result; } #endif // VK_USE_PLATFORM_MIR_KHR @@ -5039,8 +5128,16 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateWaylandSurfaceKHR(VkInstance instance, cons layer_data *my_data = get_my_data_ptr(get_dispatch_key(instance), layer_data_map); assert(my_data != NULL); + bool skip_call = false; - bool skip_call = parameter_validation_vkCreateWaylandSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, instance)].wayland_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, + reinterpret_cast(instance), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkCreateWaylandSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME); + } + skip_call |= parameter_validation_vkCreateWaylandSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); if (!skip_call) { result = get_dispatch_table(pc_instance_table_map, instance) @@ -5059,14 +5156,24 @@ VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceWaylandPresentationSupportKHR(Vk layer_data *my_data = get_my_data_ptr(get_dispatch_key(physicalDevice), layer_data_map); assert(my_data != NULL); + bool skip_call = false; - bool skip_call = + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, physicalDevice)].wayland_enabled) { + skip_call |= + log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, + reinterpret_cast(physicalDevice), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkGetPhysicalDeviceWaylandPresentationSupportKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME); + } + skip_call |= parameter_validation_vkGetPhysicalDeviceWaylandPresentationSupportKHR(my_data->report_data, queueFamilyIndex, display); if (!skip_call) { result = get_dispatch_table(pc_instance_table_map, physicalDevice) ->GetPhysicalDeviceWaylandPresentationSupportKHR(physicalDevice, queueFamilyIndex, display); } + + return result; } #endif // VK_USE_PLATFORM_WAYLAND_KHR @@ -5077,8 +5184,16 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateAndroidSurfaceKHR(VkInstance instance, cons layer_data *my_data = get_my_data_ptr(get_dispatch_key(instance), layer_data_map); assert(my_data != NULL); + bool skip_call = false; - bool skip_call = parameter_validation_vkCreateAndroidSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); + if (!instance_extension_map[get_dispatch_table(pc_instance_table_map, instance)].android_enabled) { + skip_call |= log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, + reinterpret_cast(instance), __LINE__, EXTENSION_NOT_ENABLED, LayerName, + "vkCreateAndroidSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", + VK_KHR_ANDROID_SURFACE_EXTENSION_NAME); + } + + skip_call |= parameter_validation_vkCreateAndroidSurfaceKHR(my_data->report_data, pCreateInfo, pAllocator, pSurface); if (!skip_call) { result = get_dispatch_table(pc_instance_table_map, instance) @@ -5493,45 +5608,45 @@ static PFN_vkVoidFunction InterceptWsiEnabledCommand(const char *name, VkInstanc }; VkLayerInstanceDispatchTable *pTable = get_dispatch_table(pc_instance_table_map, instance); - if (instance_extension_map.size() == 0 || !instance_extension_map[pTable].wsi_enabled) - return nullptr; - - for (size_t i = 0; i < ARRAY_SIZE(wsi_instance_commands); i++) { - if (!strcmp(wsi_instance_commands[i].name, name)) - return wsi_instance_commands[i].proc; + if (instance_extension_map[pTable].wsi_enabled) { + for (size_t i = 0; i < ARRAY_SIZE(wsi_instance_commands); i++) { + if (!strcmp(wsi_instance_commands[i].name, name)) + return wsi_instance_commands[i].proc; + } } #ifdef VK_USE_PLATFORM_WIN32_KHR - if ((instance_extension_map[pTable].win32_enabled == true) && !strcmp("vkCreateWin32SurfaceKHR", name)) + if (!strcmp("vkCreateWin32SurfaceKHR", name)) return reinterpret_cast(CreateWin32SurfaceKHR); + if (!strcmp("vkGetPhysicalDeviceWin32PresentationSupportKHR", name)) + return reinterpret_cast(GetPhysicalDeviceWin32PresentationSupportKHR); #endif // VK_USE_PLATFORM_WIN32_KHR #ifdef VK_USE_PLATFORM_XCB_KHR - if ((instance_extension_map[pTable].xcb_enabled == true) && !strcmp("vkCreateXcbSurfaceKHR", name)) + if (!strcmp("vkCreateXcbSurfaceKHR", name)) return reinterpret_cast(CreateXcbSurfaceKHR); - if ((instance_extension_map[pTable].xcb_enabled == true) && !strcmp("vkGetPhysicalDeviceXcbPresentationSupportKHR", name)) + if (!strcmp("vkGetPhysicalDeviceXcbPresentationSupportKHR", name)) return reinterpret_cast(GetPhysicalDeviceXcbPresentationSupportKHR); #endif // VK_USE_PLATFORM_XCB_KHR #ifdef VK_USE_PLATFORM_XLIB_KHR - if ((instance_extension_map[pTable].xlib_enabled == true) && !strcmp("vkCreateXlibSurfaceKHR", name)) + if (!strcmp("vkCreateXlibSurfaceKHR", name)) return reinterpret_cast(CreateXlibSurfaceKHR); - if ((instance_extension_map[pTable].xlib_enabled == true) && !strcmp("vkGetPhysicalDeviceXlibPresentationSupportKHR", name)) + if (!strcmp("vkGetPhysicalDeviceXlibPresentationSupportKHR", name)) return reinterpret_cast(GetPhysicalDeviceXlibPresentationSupportKHR); #endif // VK_USE_PLATFORM_XLIB_KHR #ifdef VK_USE_PLATFORM_MIR_KHR - if ((instance_extension_map[pTable].mir_enabled == true) && !strcmp("vkCreateMirSurfaceKHR", name)) + if (!strcmp("vkCreateMirSurfaceKHR", name)) return reinterpret_cast(CreateMirSurfaceKHR); - if ((instance_extension_map[pTable].mir_enabled == true) && !strcmp("vkGetPhysicalDeviceMirPresentationSupportKHR", name)) + if (!strcmp("vkGetPhysicalDeviceMirPresentationSupportKHR", name)) return reinterpret_cast(GetPhysicalDeviceMirPresentationSupportKHR); #endif // VK_USE_PLATFORM_MIR_KHR #ifdef VK_USE_PLATFORM_WAYLAND_KHR - if ((instance_extension_map[pTable].wayland_enabled == true) && !strcmp("vkCreateWaylandSurfaceKHR", name)) + if (!strcmp("vkCreateWaylandSurfaceKHR", name)) return reinterpret_cast(CreateWaylandSurfaceKHR); - if ((instance_extension_map[pTable].wayland_enabled == true) && - !strcmp("vkGetPhysicalDeviceWaylandPresentationSupportKHR", name)) + if (!strcmp("vkGetPhysicalDeviceWaylandPresentationSupportKHR", name)) return reinterpret_cast(GetPhysicalDeviceWaylandPresentationSupportKHR); #endif // VK_USE_PLATFORM_WAYLAND_KHR #ifdef VK_USE_PLATFORM_ANDROID_KHR - if ((instance_extension_map[pTable].android_enabled == true) && !strcmp("vkCreateAndroidSurfaceKHR", name)) + if (!strcmp("vkCreateAndroidSurfaceKHR", name)) return reinterpret_cast(CreateAndroidSurfaceKHR); #endif // VK_USE_PLATFORM_ANDROID_KHR diff --git a/layers/parameter_validation_utils.h b/layers/parameter_validation_utils.h index 099018ef..be27cbf2 100644 --- a/layers/parameter_validation_utils.h +++ b/layers/parameter_validation_utils.h @@ -58,6 +58,9 @@ enum ErrorCode { // the device FAILURE_RETURN_CODE, // A Vulkan return code indicating a failure condition // was encountered. + EXTENSION_NOT_ENABLED,// An extension entrypoint was called, but the required + // extension was not enabled at CreateInstance or + // CreateDevice time. }; struct GenericHeader { diff --git a/layers/swapchain.cpp b/layers/swapchain.cpp index f43a472d..72069223 100644 --- a/layers/swapchain.cpp +++ b/layers/swapchain.cpp @@ -358,14 +358,6 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateAndroidSurfaceKHR(VkInstance instance, cons pInstance = (it == my_data->instanceMap.end()) ? NULL : &it->second; } - // Validate that the platform extension was enabled: - if (pInstance && !pInstance->androidSurfaceExtensionEnabled) { - skip_call |= - log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, - reinterpret_cast(instance), __LINE__, SWAPCHAIN_EXT_NOT_ENABLED_BUT_USED, swapchain_layer_name, - "vkCreateAndroidSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", - VK_KHR_ANDROID_SURFACE_EXTENSION_NAME); - } lock.unlock(); if (!skip_call) { @@ -408,14 +400,6 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateMirSurfaceKHR(VkInstance instance, const Vk pInstance = (it == my_data->instanceMap.end()) ? NULL : &it->second; } - // Validate that the platform extension was enabled: - if (pInstance && !pInstance->mirSurfaceExtensionEnabled) { - skip_call |= - log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, - reinterpret_cast(instance), __LINE__, SWAPCHAIN_EXT_NOT_ENABLED_BUT_USED, swapchain_layer_name, - "vkCreateMirSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", - VK_KHR_MIR_SURFACE_EXTENSION_NAME); - } lock.unlock(); if (!skip_call) { @@ -456,15 +440,6 @@ VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceMirPresentationSupportKHR(VkPhys pPhysicalDevice = (it == my_data->physicalDeviceMap.end()) ? NULL : &it->second; } - // Validate that the platform extension was enabled: - if (pPhysicalDevice && pPhysicalDevice->pInstance && !pPhysicalDevice->pInstance->mirSurfaceExtensionEnabled) { - skip_call |= - log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, - reinterpret_cast(pPhysicalDevice->pInstance->instance), __LINE__, SWAPCHAIN_EXT_NOT_ENABLED_BUT_USED, - swapchain_layer_name, "vkGetPhysicalDeviceMirPresentationSupportKHR() called even though the %s " - "extension was not enabled for this VkInstance.", - VK_KHR_MIR_SURFACE_EXTENSION_NAME); - } if (pPhysicalDevice->gotQueueFamilyPropertyCount) { skip_call |= ValidateQueueFamilyIndex(my_data, queueFamilyIndex, pPhysicalDevice->numOfQueueFamilies, pPhysicalDevice->physicalDevice, "vkGetPhysicalDeviceMirPresentationSupportKHR"); @@ -493,14 +468,6 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateWaylandSurfaceKHR(VkInstance instance, cons pInstance = (it == my_data->instanceMap.end()) ? NULL : &it->second; } - // Validate that the platform extension was enabled: - if (pInstance && !pInstance->waylandSurfaceExtensionEnabled) { - skip_call |= - log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, - reinterpret_cast(instance), __LINE__, SWAPCHAIN_EXT_NOT_ENABLED_BUT_USED, swapchain_layer_name, - "vkCreateWaylandSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", - VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME); - } lock.unlock(); if (!skip_call) { @@ -542,15 +509,6 @@ VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceWaylandPresentationSupportKHR(Vk pPhysicalDevice = (it == my_data->physicalDeviceMap.end()) ? NULL : &it->second; } - // Validate that the platform extension was enabled: - if (pPhysicalDevice && pPhysicalDevice->pInstance && !pPhysicalDevice->pInstance->waylandSurfaceExtensionEnabled) { - skip_call |= - log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, - reinterpret_cast(pPhysicalDevice->pInstance->instance), __LINE__, SWAPCHAIN_EXT_NOT_ENABLED_BUT_USED, - swapchain_layer_name, "vkGetPhysicalDeviceWaylandPresentationSupportKHR() called even though the %s " - "extension was not enabled for this VkInstance.", - VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME); - } if (pPhysicalDevice->gotQueueFamilyPropertyCount) { skip_call |= ValidateQueueFamilyIndex(my_data, queueFamilyIndex, pPhysicalDevice->numOfQueueFamilies, pPhysicalDevice->physicalDevice, "vkGetPhysicalDeviceWaylandPresentationSupportKHR"); @@ -579,14 +537,6 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateWin32SurfaceKHR(VkInstance instance, const pInstance = (it == my_data->instanceMap.end()) ? NULL : &it->second; } - // Validate that the platform extension was enabled: - if (pInstance && !pInstance->win32SurfaceExtensionEnabled) { - skip_call |= - log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, - reinterpret_cast(instance), __LINE__, SWAPCHAIN_EXT_NOT_ENABLED_BUT_USED, swapchain_layer_name, - "vkCreateWin32SurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", - VK_KHR_WIN32_SURFACE_EXTENSION_NAME); - } lock.unlock(); if (!skip_call) { @@ -627,15 +577,6 @@ VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceWin32PresentationSupportKHR(VkPh pPhysicalDevice = (it == my_data->physicalDeviceMap.end()) ? NULL : &it->second; } - // Validate that the platform extension was enabled: - if (pPhysicalDevice && pPhysicalDevice->pInstance && !pPhysicalDevice->pInstance->win32SurfaceExtensionEnabled) { - skip_call |= - log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, - reinterpret_cast(pPhysicalDevice->pInstance->instance), __LINE__, SWAPCHAIN_EXT_NOT_ENABLED_BUT_USED, - swapchain_layer_name, "vkGetPhysicalDeviceWin32PresentationSupportKHR() called even though the %s extension " - "was not enabled for this VkInstance.", - VK_KHR_WIN32_SURFACE_EXTENSION_NAME); - } if (pPhysicalDevice->gotQueueFamilyPropertyCount) { skip_call |= ValidateQueueFamilyIndex(my_data, queueFamilyIndex, pPhysicalDevice->numOfQueueFamilies, pPhysicalDevice->physicalDevice, "vkGetPhysicalDeviceWin32PresentationSupportKHR"); @@ -663,14 +604,6 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateXcbSurfaceKHR(VkInstance instance, const Vk pInstance = (it == my_data->instanceMap.end()) ? NULL : &it->second; } - // Validate that the platform extension was enabled: - if (pInstance && !pInstance->xcbSurfaceExtensionEnabled) { - skip_call |= - log_msg(my_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, - reinterpret_cast(instance), __LINE__, SWAPCHAIN_EXT_NOT_ENABLED_BUT_USED, swapchain_layer_name, - "vkCreateXcbSurfaceKHR() called even though the %s extension was not enabled for this VkInstance.", - VK_KHR_XCB_SURFACE_EXTENSION_NAME); - } lock.unlock(); if (!skip_call) { -- cgit v1.2.3