Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VK_LAYER_RGA_pipeline_extraction layer crashes on program exit #96

Open
dan5sch opened this issue Aug 12, 2022 · 0 comments
Open

VK_LAYER_RGA_pipeline_extraction layer crashes on program exit #96

dan5sch opened this issue Aug 12, 2022 · 0 comments

Comments

@dan5sch
Copy link

dan5sch commented Aug 12, 2022

On Ubuntu 20.04, enabling the VK_LAYER_RGA_pipeline_extraction layer from RGA release 2.6.2 results in a crash with the following error when I close the Vulkan application for which I enabled the layer:

/home/jenkins/workspace/RGA-Layer/Fossilize/rga/Vulkan/Src/Converters/rgFossilizeConverter.cpp:913: static bool rgFossilizeConverter::Convert(const Document&, const string&, bool, const std::map<unsigned int, VkShaderModuleCreateInfo>&, std::vector<std::__cxx11::basic_string<char> >&, const std::map<long unsigned int, std::__cxx11::basic_string<char> >&): Assertion 'ret' failed.

The Vulkan application does run normally until I exit the program. Setting ENABLE_RGA_PIPELINE_EXTRACTION_LAYER=1 is sufficient to produce the crash, even if RGA_LAYER_OUTPUT_PATH is unset.

Version info:

  • Ubuntu 20.04.4
  • RGA release containing the layer: 2.6.2
  • amdgpu-pro-core package: 22.20-1438746~20.04
  • vulkan-amdgpu-pro package: 22.20-1438746~20.04
  • vulkan-sdk package: 1.3.216.0~rc2-1lunarg20.04-1

Separately, the layer files and the install process provided by the rga_layer_install script presented multiple issues:

  • The provided .json file for the layer lists the layer name as libVK_LAYER_RGA_pipeline_extraction (note the lib prefix). This causes the SDK's Vulkan Configurator to complain on startup that the layer is malformed. Manually removing the "lib" prefix from the name field fixed this issue.
  • The .json file lists an api_version of 1.0.70, causing the Vulkan Loader to silently ignore the layer for applications using a newer API version. At first I thought the file wasn't even being found at its install location (~/.local/share/vulkan/implicit_layer.d), but it turns out that ignoring older-version layers is intended behavior. Manually updating the version to higher than my application's requested Vulkan API version fixed the issue. This was a "fun" one to track down.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant