Lines Matching refs:inst

116 bool windows_add_json_entry(const struct loader_instance *inst,
131 *reg_data = loader_instance_heap_alloc(inst, *total_size, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
133 loader_log(inst, VULKAN_LOADER_ERROR_BIT, 0,
141 loader_instance_heap_realloc(inst, *reg_data, *total_size, *total_size * 2, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
143 loader_log(inst, VULKAN_LOADER_ERROR_BIT, 0,
159 loader_log(inst, VULKAN_LOADER_INFO_BIT, 0, "%s: Located json file \"%s\" from PnP registry: %s", __FUNCTION__,
169 bool windows_get_device_registry_entry(const struct loader_instance *inst, char **reg_data, PDWORD total_size, DEVINST dev_id,
181 loader_log(inst, VULKAN_LOADER_WARN_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
192 loader_log(inst, VULKAN_LOADER_INFO_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
195 loader_log(inst, VULKAN_LOADER_INFO_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
201 manifest_path = loader_instance_heap_alloc(inst, requiredSize, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
203 loader_log(inst, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
212 loader_log(inst, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
219 loader_log(inst, VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_DRIVER_BIT, 0,
225 found = windows_add_json_entry(inst, reg_data, total_size, value_name, data_type, manifest_path, requiredSize, result);
228 loader_instance_heap_free(inst, manifest_path);
233 VkResult windows_get_device_registry_files(const struct loader_instance *inst, uint32_t log_target_flag, char **reg_data,
261 loader_instance_heap_free(inst, pDeviceNames);
263 pDeviceNames = loader_instance_heap_alloc(inst, deviceNamesSize * sizeof(wchar_t), VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
265 loader_log(inst, VULKAN_LOADER_ERROR_BIT | log_target_flag, 0,
276 loader_log(inst, VULKAN_LOADER_ERROR_BIT | log_target_flag, 0,
284 loader_log(inst, VULKAN_LOADER_ERROR_BIT | log_target_flag, 0,
289 loader_log(inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0,
294 loader_log(inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0, "windows_get_device_registry_files: opening device %ls",
297 if (windows_get_device_registry_entry(inst, reg_data, reg_data_size, devID, value_name, &result)) {
306 loader_log(inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0,
315 loader_log(inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0,
320 loader_log(inst, VULKAN_LOADER_ERROR_BIT | log_target_flag, 0,
328 loader_log(inst, VULKAN_LOADER_DEBUG_BIT | log_target_flag, 0,
333 if (windows_get_device_registry_entry(inst, reg_data, reg_data_size, childID, value_name, &result)) {
341 loader_instance_heap_free(inst, pDeviceNames);
345 loader_log(inst, log_target_flag, 0, "windows_get_device_registry_files: found no registry files");
352 VkResult windows_get_registry_files(const struct loader_instance *inst, char *location, bool use_secondary_hive, char **reg_data,
417 loader_log(inst, VULKAN_LOADER_WARN_BIT | log_target_flag, 0,
435 *reg_data = loader_instance_heap_alloc(inst, *reg_data_size, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
437 loader_log(inst, VULKAN_LOADER_ERROR_BIT | log_target_flag, 0,
445 void *new_ptr = loader_instance_heap_realloc(inst, *reg_data, *reg_data_size, *reg_data_size * 2,
449 inst, VULKAN_LOADER_ERROR_BIT | log_target_flag, 0,
462 loader_log(inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0,
474 loader_log(inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0,
484 loader_log(inst, VULKAN_LOADER_WARN_BIT | log_target_flag, 0,
494 inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0,
507 loader_log(inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0,
540 inst, VULKAN_LOADER_INFO_BIT | log_target_flag, 0,
561 loader_log(inst, log_target_flag, 0, "Found no registry files in %s\\%s",
575 VkResult windows_read_manifest_from_d3d_adapters(const struct loader_instance *inst, char **reg_data, PDWORD reg_data_size,
602 adapters.adapters = loader_instance_heap_alloc(inst, sizeof(*adapters.adapters) * adapters.adapter_count,
649 loader_instance_heap_realloc(inst, full_info, full_info_size, full_size, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
670 void *buffer = loader_instance_heap_realloc(inst, json_path, json_path_size, full_info->output_value_size,
685 windows_add_json_entry(inst, reg_data, reg_data_size, (LPCTSTR)L"EnumAdapters", REG_SZ, json_path,
699 loader_instance_heap_free(inst, json_path);
700 loader_instance_heap_free(inst, full_info);
701 loader_instance_heap_free(inst, adapters.adapters);
707 VkResult windows_read_data_files_in_registry(const struct loader_instance *inst, enum loader_data_files_type data_file_type,
716 loader_log(inst, log_target_flag, 0, "Checking for Driver Manifest files in Registry at %s\\%s",
720 loader_log(inst, log_target_flag, 0, "Checking for Layer Manifest files in Registry at %s\\%s",
729 regHKR_result = windows_read_manifest_from_d3d_adapters(inst, &search_path, &reg_size, LoaderPnpDriverRegistryWide());
732 windows_get_device_registry_files(inst, log_target_flag, &search_path, &reg_size, LoaderPnpDriverRegistry());
735 regHKR_result = windows_read_manifest_from_d3d_adapters(inst, &search_path, &reg_size, LoaderPnpELayerRegistryWide());
738 windows_get_device_registry_files(inst, log_target_flag, &search_path, &reg_size, LoaderPnpELayerRegistry());
741 regHKR_result = windows_read_manifest_from_d3d_adapters(inst, &search_path, &reg_size, LoaderPnpILayerRegistryWide());
744 windows_get_device_registry_files(inst, log_target_flag, &search_path, &reg_size, LoaderPnpILayerRegistry());
755 VkResult reg_result = windows_get_registry_files(inst, registry_location, use_secondary_hive, &search_path, &reg_size);
763 loader_log(inst, VULKAN_LOADER_ERROR_BIT | log_target_flag, 0,
772 loader_log(inst, VULKAN_LOADER_WARN_BIT | log_target_flag, 0,
776 loader_log(inst, VULKAN_LOADER_WARN_BIT | log_target_flag, 0,
787 vk_result = add_data_files(inst, search_path, out_files, false);
791 loader_instance_heap_free(inst, search_path);
796 VkResult enumerate_adapter_physical_devices(struct loader_instance *inst, struct loader_icd_term *icd_term, uint32_t icd_idx,
806 loader_log(inst, VULKAN_LOADER_WARN_BIT, 0,
819 inst, next_icd_phys_devs->physical_devices, next_icd_phys_devs->device_count * sizeof(VkPhysicalDevice),
829 loader_instance_heap_free(inst, next_icd_phys_devs->physical_devices);
834 loader_log(inst, VULKAN_LOADER_WARN_BIT, 0, "Failed to convert DXGI adapter into Vulkan physical device");
872 void sort_physical_devices_with_same_luid(struct loader_instance *inst, uint32_t icd_phys_devs_array_count,
874 bool app_is_vulkan_1_1 = loader_check_version_meets_required(LOADER_VERSION_1_1_0, inst->app_api_version);
926 VkResult windows_read_sorted_physical_devices(struct loader_instance *inst, uint32_t *icd_phys_devs_array_count,
935 loader_log(inst, VULKAN_LOADER_INFO_BIT, 0, "Failed to create DXGI factory 6. Physical devices will not be sorted");
939 *icd_phys_devs_array = loader_instance_heap_calloc(inst, icd_phys_devs_array_size * sizeof(struct loader_icd_physical_devices),
953 loader_log(inst, VULKAN_LOADER_WARN_BIT, 0,
961 loader_log(inst, VULKAN_LOADER_WARN_BIT, 0, "Failed to get adapter LUID index %u. This adapter will not be sorted", i);
967 *icd_phys_devs_array = loader_instance_heap_realloc(inst, *icd_phys_devs_array, old_size, 2 * old_size,
979 icd_term = inst->icd_terms;
986 res = enumerate_adapter_physical_devices(inst, icd_term, icd_idx, description.AdapterLuid, icd_phys_devs_array_count,
999 sort_physical_devices_with_same_luid(inst, *icd_phys_devs_array_count, *icd_phys_devs_array);
1003 loader_instance_heap_free(inst, *icd_phys_devs_array);
1023 void windows_sort_devices_in_group(struct loader_instance *inst, struct VkPhysicalDeviceGroupProperties *group_props,
1040 loader_log(inst, VULKAN_LOADER_WARN_BIT, 0,
1046 VkResult windows_sort_physical_device_groups(struct loader_instance *inst, const uint32_t group_count,
1051 loader_log(inst, VULKAN_LOADER_WARN_BIT, 0,
1068 windows_sort_devices_in_group(inst, &sorted_group_term[group].group_props, &sorted_phys_dev_array[icd]);
1090 char *windows_get_app_package_manifest_path(const struct loader_instance *inst) {
1113 loader_log(inst, VULKAN_LOADER_INFO_BIT, 0,
1119 WCHAR *buffer = loader_instance_heap_alloc(inst, sizeof(WCHAR) * bufferLength, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
1120 PWSTR *packages = loader_instance_heap_alloc(inst, sizeof(PWSTR) * numPackages, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
1122 loader_log(inst, VULKAN_LOADER_ERROR_BIT, 0,
1128 loader_log(inst, VULKAN_LOADER_ERROR_BIT, 0,
1138 loader_log(inst, VULKAN_LOADER_ERROR_BIT, 0,
1145 loader_log(inst, VULKAN_LOADER_ERROR_BIT, 0,
1150 ret = loader_instance_heap_alloc(inst, narrowPathLength, VK_SYSTEM_ALLOCATION_SCOPE_COMMAND);
1152 loader_log(inst, VULKAN_LOADER_ERROR_BIT, 0, "windows_get_app_package_manifest_path: Failed to allocate path");
1160 loader_instance_heap_free(inst, buffer);
1161 loader_instance_heap_free(inst, packages);
1165 VkResult get_settings_path_if_exists_in_registry_key(const struct loader_instance *inst, char **out_path, HKEY key) {
1197 *out_path = loader_instance_heap_calloc(inst, name_size + 1, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
1211 VkResult windows_get_loader_settings_file_path(const struct loader_instance *inst, char **out_path) {
1227 result = get_settings_path_if_exists_in_registry_key(inst, out_path, key);
1231 result = get_settings_path_if_exists_in_registry_key(inst, out_path, key);
1245 result = get_settings_path_if_exists_in_registry_key(inst, out_path, key);