AMDVLK 2021.Q3.4 Driver Fixes "Horrifically Broken" Switchable Graphics Layer
It's been less than one week since the AMDVLK 2021.Q3.3 update for this official open-source Radeon Vulkan Linux driver while today AMD has issued its latest update.
Given the short turnaround time since the prior update, when seeing AMDVLK 2021.Q3.4 tagged this morning, the immediate thought was this would be to provide official Radeon RX 6600 XT support given its retail launch today. That's not the case and AMDVLK 2021.Q3.4 is just for shipping one driver fix.
The only fix/change with this AMDVLK 2021.Q3.4 update is for fixing the broken switchable graphics layer -- the Vulkan layer that allows for easily toggling between the AMDVLK and RADV Vulkan drivers when co-existing on the same system. The fix was actually authored by Valve contractor Joshua Ashton known for his work on DXVK and related projects. He wrote in the patch, "Fix horrifically broken switchable graphics layer - This layer crashes everything for me right now including vulkaninfo, this is because it's entirely broken when either RADV or lavapipe appears before AMDVLK in the device ordering because... You **can't** pass the caller's pPhysicalDeviceCount value down the chain! You MUST to query ALL of the physical devices beforehand and THEN filter, you cannot query only the number of physical devices you return because you've already removed them (!!!) This also adds correct handling for returning VK_INCOMPLETE which was missing. Also cleans up the 3 loops doing the same thing into one."
Ouch, in any case, this switchable Vulkan driver layer is now in better standing with AMDVLK 2021.Q3.4. This AMDVLK driver update can be downloaded in source form or Ubuntu and RHEL/CentOS binaries via GitHub.
Given the short turnaround time since the prior update, when seeing AMDVLK 2021.Q3.4 tagged this morning, the immediate thought was this would be to provide official Radeon RX 6600 XT support given its retail launch today. That's not the case and AMDVLK 2021.Q3.4 is just for shipping one driver fix.
The only fix/change with this AMDVLK 2021.Q3.4 update is for fixing the broken switchable graphics layer -- the Vulkan layer that allows for easily toggling between the AMDVLK and RADV Vulkan drivers when co-existing on the same system. The fix was actually authored by Valve contractor Joshua Ashton known for his work on DXVK and related projects. He wrote in the patch, "Fix horrifically broken switchable graphics layer - This layer crashes everything for me right now including vulkaninfo, this is because it's entirely broken when either RADV or lavapipe appears before AMDVLK in the device ordering because... You **can't** pass the caller's pPhysicalDeviceCount value down the chain! You MUST to query ALL of the physical devices beforehand and THEN filter, you cannot query only the number of physical devices you return because you've already removed them (!!!) This also adds correct handling for returning VK_INCOMPLETE which was missing. Also cleans up the 3 loops doing the same thing into one."
Ouch, in any case, this switchable Vulkan driver layer is now in better standing with AMDVLK 2021.Q3.4. This AMDVLK driver update can be downloaded in source form or Ubuntu and RHEL/CentOS binaries via GitHub.
1 Comment