Creating a vulkan physical device on an AMD GPU causes following calls to drmModeAddFB to fail with ENOENT
(build with gcc -g -Wall -I/usr/include/libdrm main.c -lvulkan -lgbm -ldrm
)
Attached is a file demonstrating the issue. In summary, calling drmModeAddFB
after creating a Vulkan physical device causes the call creation to fail with ENOENT on my RX 570. On another system of mine with Intel graphics, it works fine. It also works if I move the call to drmModeAddFB
to before the creation of the physical device.
The dmesg logs of the AMD system shows this:
amdgpu 0000:26:00.0: No GEM object associated to handle 0x00000004, can't create framebuffer
The specs of the AMD system:
- Arch Linux
- Kernel 5.7.12
- Mesa 20.1.5
- Radeon RX 570
- nVidia GTX 750 Ti (no driver installed, not relevant as far as I can tell)
And the Intel system:
- Arch Linux
- Kernel 5.7.7
- Mesa 20.1.2
- Intel HD 520