From 6f7b55de037c8f04d1bca34adbc6922fdda11bad Mon Sep 17 00:00:00 2001 From: Chia-I Wu Date: Mon, 26 Oct 2015 19:48:03 +0800 Subject: MR 461: Documented updated vkQueueSubmit and remove wait + signal semaphore operations on queues. (WIP) https://gitlab.khronos.org/vulkan/vulkan/merge_requests/461 --- layers/mem_tracker.cpp | 57 -------------------------------------------------- 1 file changed, 57 deletions(-) (limited to 'layers/mem_tracker.cpp') diff --git a/layers/mem_tracker.cpp b/layers/mem_tracker.cpp index d1a21731..ffadf243 100644 --- a/layers/mem_tracker.cpp +++ b/layers/mem_tracker.cpp @@ -2416,59 +2416,6 @@ VK_LAYER_EXPORT void VKAPI vkDestroySemaphore( get_dispatch_table(mem_tracker_device_table_map, device)->DestroySemaphore(device, semaphore); } -VK_LAYER_EXPORT VkResult VKAPI vkQueueSignalSemaphore( - VkQueue queue, - VkSemaphore semaphore) -{ - VkResult result = VK_ERROR_VALIDATION_FAILED; - VkBool32 skipCall = VK_FALSE; - - loader_platform_thread_lock_mutex(&globalLock); - if (semaphoreMap.find(semaphore.handle) != semaphoreMap.end()) { - if (semaphoreMap[semaphore.handle] != MEMTRACK_SEMAPHORE_STATE_UNSET) { - skipCall = log_msg(mdd(queue), VK_DBG_REPORT_ERROR_BIT, VK_OBJECT_TYPE_SEMAPHORE, semaphore.handle, - 0, MEMTRACK_NONE, "SEMAPHORE", - "vkQueueSignalSemaphore: Semaphore must not be currently signaled or in a wait state"); - } - semaphoreMap[semaphore.handle] = MEMTRACK_SEMAPHORE_STATE_SIGNALLED; - } - loader_platform_thread_unlock_mutex(&globalLock); - if (VK_FALSE == skipCall) { - VkResult result = get_dispatch_table(mem_tracker_device_table_map, queue)->QueueSignalSemaphore(queue, semaphore); - } - return result; -} - -VK_LAYER_EXPORT VkResult VKAPI vkQueueWaitSemaphore( - VkQueue queue, - VkSemaphore semaphore) -{ - VkBool32 skipCall = VK_FALSE; - VkBool32 found = VK_FALSE; - VkResult result = VK_ERROR_VALIDATION_FAILED; - - loader_platform_thread_lock_mutex(&globalLock); - if (semaphoreMap.find(semaphore.handle) != semaphoreMap.end()) { - found = VK_TRUE; - if (semaphoreMap[semaphore.handle] != MEMTRACK_SEMAPHORE_STATE_SIGNALLED) { - skipCall = log_msg(mdd(queue), VK_DBG_REPORT_ERROR_BIT, VK_OBJECT_TYPE_SEMAPHORE, semaphore.handle, - 0, MEMTRACK_NONE, "SEMAPHORE", - "vkQueueWaitSemaphore: Semaphore must be in signaled state before passing to vkQueueWaitSemaphore"); - } - semaphoreMap[semaphore.handle] = MEMTRACK_SEMAPHORE_STATE_WAIT; - } - loader_platform_thread_unlock_mutex(&globalLock); - if (VK_FALSE == skipCall) { - result = get_dispatch_table(mem_tracker_device_table_map, queue)->QueueWaitSemaphore(queue, semaphore); - } - loader_platform_thread_lock_mutex(&globalLock); - if (found) { - semaphoreMap[semaphore.handle] = MEMTRACK_SEMAPHORE_STATE_UNSET; - } - loader_platform_thread_unlock_mutex(&globalLock); - return result; -} - VK_LAYER_EXPORT PFN_vkVoidFunction VKAPI vkGetDeviceProcAddr( VkDevice dev, const char *funcName) @@ -2528,10 +2475,6 @@ VK_LAYER_EXPORT PFN_vkVoidFunction VKAPI vkGetDeviceProcAddr( return (PFN_vkVoidFunction) vkCreateSemaphore; if (!strcmp(funcName, "vkDestroySemaphore")) return (PFN_vkVoidFunction) vkDestroySemaphore; - if (!strcmp(funcName, "vkQueueSignalSemaphore")) - return (PFN_vkVoidFunction) vkQueueSignalSemaphore; - if (!strcmp(funcName, "vkQueueWaitSemaphore")) - return (PFN_vkVoidFunction) vkQueueWaitSemaphore; if (!strcmp(funcName, "vkQueueWaitIdle")) return (PFN_vkVoidFunction) vkQueueWaitIdle; if (!strcmp(funcName, "vkDeviceWaitIdle")) -- cgit v1.2.3