Multiple ICDs support
One of the goals of the Vulkan Loader is to manage the Installable Client Drivers (ICDs) present in the system. The Vulkan loader architecture and implementation shield Vulkan applications as well as the Vulkan ICDs from the complexity of having multiple drivers accessible via a single Vulkan API.
Unfortunately, Vulkan layers can find themselves handling some of this complexity themselves. In particular, a Vulkan layer wanting to implement a Vulkan extension, such as the Vulkan WSI Layer, has to intercept a number of instance and device commands. In some circumstances, it is not straightforward for the layer to decide whether it should handle the call itself or it should rather hand it over to the loader and the ICDs.
For this reason, it is not trivial to guarantee that the Vulkan WSI Layer works smoothly in the case where multiple ICDs are installed in the system. Extensive testing would need to be put in place to ensure various multiple ICDs scenarios are working as expected. Such extensive testing has not been put in place, yet.