From: Tobin Ehlis Date: Wed, 12 Oct 2016 20:27:30 +0000 (-0600) Subject: layers:Rename DESCRIPTOR_POOL_NODE to *_STATE X-Git-Tag: upstream/1.1.92~2337 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c3b4decca400e2328e40820aa5215a42921731b5;p=platform%2Fupstream%2FVulkan-Tools.git layers:Rename DESCRIPTOR_POOL_NODE to *_STATE Continuing the NODE->STATE renaming effort --- diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index f3d077a..a136f60 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -145,7 +145,7 @@ struct layer_data { unordered_map> bufferMap; unordered_map pipelineMap; unordered_map commandPoolMap; - unordered_map descriptorPoolMap; + unordered_map descriptorPoolMap; unordered_map setMap; unordered_map descriptorSetLayoutMap; unordered_map pipelineLayoutMap; @@ -3569,7 +3569,7 @@ static void deletePipelines(layer_data *my_data) { // Block of code at start here specifically for managing/tracking DSs // Return Pool node ptr for specified pool or else NULL -DESCRIPTOR_POOL_NODE *getPoolNode(const layer_data *dev_data, const VkDescriptorPool pool) { +DESCRIPTOR_POOL_STATE *getDescriptorPoolState(const layer_data *dev_data, const VkDescriptorPool pool) { auto pool_it = dev_data->descriptorPoolMap.find(pool); if (pool_it == dev_data->descriptorPoolMap.end()) { return NULL; @@ -3892,7 +3892,7 @@ static void deletePools(layer_data *my_data) { static void clearDescriptorPool(layer_data *my_data, const VkDevice device, const VkDescriptorPool pool, VkDescriptorPoolResetFlags flags) { - DESCRIPTOR_POOL_NODE *pPool = getPoolNode(my_data, pool); + DESCRIPTOR_POOL_STATE *pPool = getDescriptorPoolState(my_data, pool); // TODO: validate flags // For every set off of this pool, clear it, remove from setMap, and free cvdescriptorset::DescriptorSet for (auto ds : pPool->sets) { @@ -4094,7 +4094,7 @@ BASE_NODE *GetStateStructPtrFromObject(layer_data *dev_data, VK_OBJECT object_st break; } case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT: { - base_ptr = getPoolNode(dev_data, reinterpret_cast(object_struct.handle)); + base_ptr = getDescriptorPoolState(dev_data, reinterpret_cast(object_struct.handle)); break; } case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT: { @@ -4728,7 +4728,7 @@ static bool ValidateAndIncrementBoundObjects(layer_data *dev_data, GLOBAL_CB_NOD break; } case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT: { - base_obj = getPoolNode(dev_data, reinterpret_cast(obj.handle)); + base_obj = getDescriptorPoolState(dev_data, reinterpret_cast(obj.handle)); error_code = DRAWSTATE_INVALID_DESCRIPTOR_POOL; break; } @@ -6087,11 +6087,11 @@ DestroyDescriptorSetLayout(VkDevice device, VkDescriptorSetLayout descriptorSetL } static bool PreCallValidateDestroyDescriptorPool(layer_data *dev_data, VkDescriptorPool pool, - DESCRIPTOR_POOL_NODE **desc_pool_state, VK_OBJECT *obj_struct) { + DESCRIPTOR_POOL_STATE **desc_pool_state, VK_OBJECT *obj_struct) { if (dev_data->instance_state->disabled.destroy_descriptor_pool) return false; bool skip = false; - *desc_pool_state = getPoolNode(dev_data, pool); + *desc_pool_state = getDescriptorPoolState(dev_data, pool); if (*desc_pool_state) { *obj_struct = {reinterpret_cast(pool), VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT}; skip |= ValidateObjectNotInUse(dev_data, *desc_pool_state, *obj_struct, VALIDATION_ERROR_00901); @@ -6100,7 +6100,7 @@ static bool PreCallValidateDestroyDescriptorPool(layer_data *dev_data, VkDescrip } static void PostCallRecordDestroyDescriptorPool(layer_data *dev_data, VkDescriptorPool descriptorPool, - DESCRIPTOR_POOL_NODE *desc_pool_state, VK_OBJECT obj_struct) { + DESCRIPTOR_POOL_STATE *desc_pool_state, VK_OBJECT obj_struct) { // Any bound cmd buffers are now invalid invalidateCommandBuffers(desc_pool_state->cb_bindings, obj_struct); // Free sets that were in this pool @@ -6113,7 +6113,7 @@ static void PostCallRecordDestroyDescriptorPool(layer_data *dev_data, VkDescript VKAPI_ATTR void VKAPI_CALL DestroyDescriptorPool(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks *pAllocator) { layer_data *dev_data = get_my_data_ptr(get_dispatch_key(device), layer_data_map); - DESCRIPTOR_POOL_NODE *desc_pool_state = nullptr; + DESCRIPTOR_POOL_STATE *desc_pool_state = nullptr; VK_OBJECT obj_struct; std::unique_lock lock(global_lock); bool skip = PreCallValidateDestroyDescriptorPool(dev_data, descriptorPool, &desc_pool_state, &obj_struct); @@ -6844,11 +6844,11 @@ CreateDescriptorPool(VkDevice device, const VkDescriptorPoolCreateInfo *pCreateI (uint64_t)*pDescriptorPool, __LINE__, DRAWSTATE_OUT_OF_MEMORY, "DS", "Created Descriptor Pool 0x%" PRIxLEAST64, (uint64_t)*pDescriptorPool)) return VK_ERROR_VALIDATION_FAILED_EXT; - DESCRIPTOR_POOL_NODE *pNewNode = new DESCRIPTOR_POOL_NODE(*pDescriptorPool, pCreateInfo); + DESCRIPTOR_POOL_STATE *pNewNode = new DESCRIPTOR_POOL_STATE(*pDescriptorPool, pCreateInfo); if (NULL == pNewNode) { if (log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT, (uint64_t)*pDescriptorPool, __LINE__, DRAWSTATE_OUT_OF_MEMORY, "DS", - "Out of memory while attempting to allocate DESCRIPTOR_POOL_NODE in vkCreateDescriptorPool()")) + "Out of memory while attempting to allocate DESCRIPTOR_POOL_STATE in vkCreateDescriptorPool()")) return VK_ERROR_VALIDATION_FAILED_EXT; } else { std::lock_guard lock(global_lock); @@ -6920,8 +6920,8 @@ static bool PreCallValidateFreeDescriptorSets(const layer_data *dev_data, VkDesc for (uint32_t i = 0; i < count; ++i) skip_call |= validateIdleDescriptorSet(dev_data, descriptor_sets[i], "vkFreeDescriptorSets"); - DESCRIPTOR_POOL_NODE *pool_node = getPoolNode(dev_data, pool); - if (pool_node && !(VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT & pool_node->createInfo.flags)) { + DESCRIPTOR_POOL_STATE *pool_state = getDescriptorPoolState(dev_data, pool); + if (pool_state && !(VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT & pool_state->createInfo.flags)) { // Can't Free from a NON_FREE pool skip_call |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT, reinterpret_cast(pool), __LINE__, VALIDATION_ERROR_00922, "DS", @@ -6934,7 +6934,7 @@ static bool PreCallValidateFreeDescriptorSets(const layer_data *dev_data, VkDesc // Sets have been removed from the pool so update underlying state static void PostCallRecordFreeDescriptorSets(layer_data *dev_data, VkDescriptorPool pool, uint32_t count, const VkDescriptorSet *descriptor_sets) { - DESCRIPTOR_POOL_NODE *pool_state = getPoolNode(dev_data, pool); + DESCRIPTOR_POOL_STATE *pool_state = getDescriptorPoolState(dev_data, pool); // Update available descriptor sets in pool pool_state->availableSets += count; diff --git a/layers/core_validation_types.h b/layers/core_validation_types.h index 1224059..5ba9f11 100644 --- a/layers/core_validation_types.h +++ b/layers/core_validation_types.h @@ -110,7 +110,7 @@ enum descriptor_req { DESCRIPTOR_REQ_MULTI_SAMPLE = DESCRIPTOR_REQ_SINGLE_SAMPLE << 1, }; -struct DESCRIPTOR_POOL_NODE : BASE_NODE { +struct DESCRIPTOR_POOL_STATE : BASE_NODE { VkDescriptorPool pool; uint32_t maxSets; // Max descriptor sets allowed in this pool uint32_t availableSets; // Available descriptor sets in this pool @@ -120,7 +120,7 @@ struct DESCRIPTOR_POOL_NODE : BASE_NODE { std::vector maxDescriptorTypeCount; // Max # of descriptors of each type in this pool std::vector availableDescriptorTypeCount; // Available # of descriptors of each type in this pool - DESCRIPTOR_POOL_NODE(const VkDescriptorPool pool, const VkDescriptorPoolCreateInfo *pCreateInfo) + DESCRIPTOR_POOL_STATE(const VkDescriptorPool pool, const VkDescriptorPoolCreateInfo *pCreateInfo) : pool(pool), maxSets(pCreateInfo->maxSets), availableSets(pCreateInfo->maxSets), createInfo(*pCreateInfo), maxDescriptorTypeCount(VK_DESCRIPTOR_TYPE_RANGE_SIZE, 0), availableDescriptorTypeCount(VK_DESCRIPTOR_TYPE_RANGE_SIZE, 0) { if (createInfo.poolSizeCount) { // Shadow type struct from ptr into local struct @@ -139,7 +139,7 @@ struct DESCRIPTOR_POOL_NODE : BASE_NODE { createInfo.pPoolSizes = NULL; // Make sure this is NULL so we don't try to clean it up } } - ~DESCRIPTOR_POOL_NODE() { + ~DESCRIPTOR_POOL_STATE() { delete[] createInfo.pPoolSizes; // TODO : pSets are currently freed in deletePools function which uses freeShadowUpdateTree function // need to migrate that struct to smart ptrs for auto-cleanup @@ -601,7 +601,7 @@ namespace core_validation { struct layer_data; cvdescriptorset::DescriptorSet *getSetNode(const layer_data *, VkDescriptorSet); cvdescriptorset::DescriptorSetLayout const *getDescriptorSetLayout(layer_data const *, VkDescriptorSetLayout); -DESCRIPTOR_POOL_NODE *getPoolNode(const layer_data *, const VkDescriptorPool); +DESCRIPTOR_POOL_STATE *getPoolNode(const layer_data *, const VkDescriptorPool); BUFFER_NODE *getBufferNode(const layer_data *, VkBuffer); IMAGE_NODE *getImageNode(const layer_data *, VkImage); DEVICE_MEM_INFO *getMemObjInfo(const layer_data *, VkDeviceMemory); diff --git a/layers/descriptor_sets.cpp b/layers/descriptor_sets.cpp index 82e693d..de9f2f1 100644 --- a/layers/descriptor_sets.cpp +++ b/layers/descriptor_sets.cpp @@ -1524,7 +1524,7 @@ bool cvdescriptorset::ValidateAllocateDescriptorSets(const debug_report_data *re void cvdescriptorset::PerformAllocateDescriptorSets(const VkDescriptorSetAllocateInfo *p_alloc_info, const VkDescriptorSet *descriptor_sets, const AllocateDescriptorSetsData *ds_data, - std::unordered_map *pool_map, + std::unordered_map *pool_map, std::unordered_map *set_map, const core_validation::layer_data *dev_data) { auto pool_state = (*pool_map)[p_alloc_info->descriptorPool]; diff --git a/layers/descriptor_sets.h b/layers/descriptor_sets.h index 2ea8388..11ba9a3 100644 --- a/layers/descriptor_sets.h +++ b/layers/descriptor_sets.h @@ -273,7 +273,7 @@ bool ValidateAllocateDescriptorSets(const debug_report_data *, const VkDescripto const core_validation::layer_data *, AllocateDescriptorSetsData *); // Update state based on allocating new descriptorsets void PerformAllocateDescriptorSets(const VkDescriptorSetAllocateInfo *, const VkDescriptorSet *, const AllocateDescriptorSetsData *, - std::unordered_map *, + std::unordered_map *, std::unordered_map *, const core_validation::layer_data *);