drm-shim CI Reproduction¶
Overview¶
drm-shim is a user-space library that intercepts ioctl calls using LD_PRELOAD.
It emulates a hardware DRM device node, bypassing the actual kernel driver.
This allows drivers (like radeonsi, radv, turnip, or freedreno)
to initialize as if real hardware is present.
All rendering execution is no-oped (unless using a shim that executes on a simulator), but tests will often run to completion, which is usually enough to reproduce crashes and assertion failures.
The shim libraries are built alongside the corresponding driver when you
configure your build with -Dtools=drm-shim.
Running these tests must be done inside a meson devenv shell.
This automatically sets up necessary environment variables like
VK_DRIVER_FILES to point to your newly built drivers, and adds the
drm-shim wrapper script (located at bin/drm-shim.py) to your PATH.
The CI jobs test various GPU targets using the following test suites:
GL CTS:
-DDEQP_TARGET=surfacelessVK CTS:
-DDEQP_TARGET=vulkan_headlessPiglit: Use
PIGLIT_PLATFORM=gbm
Once inside the meson devenv shell, CI jobs can be reproduced
using the drm-shim wrapper. For example, to reproduce the
zink-anv-tgl job:
drm-shim zink-anv-tgl ./deqp-gles2
AMD CI Jobs¶
CI job |
Driver maintainers |
CI job maintainers |
Build Options |
|---|---|---|---|
Stoney |
Marek Olšák (@mareko, mareko) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
Raven |
Marek Olšák (@mareko, mareko) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
Cezanne |
Marek Olšák (@mareko, mareko) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
Mendocino |
Marek Olšák (@mareko, mareko) |
Your Name Here (gitlab:@username, irc:username) |
|
Vangogh |
Marek Olšák (@mareko, mareko) |
Your Name Here (gitlab:@username, irc:username) |
|
Navi21 |
Marek Olšák (@mareko, mareko) |
Your Name Here (gitlab:@username, irc:username) |
|
Navi31 |
Marek Olšák (@mareko, mareko) |
Your Name Here (gitlab:@username, irc:username) |
|
GFX1201 |
Marek Olšák (@mareko, mareko) |
Your Name Here (gitlab:@username, irc:username) |
|
Intel CI Jobs¶
CI job |
Driver maintainers |
CI job maintainers |
Build Options |
|---|---|---|---|
APL (Apollo Lake) |
Kenneth Graunke, (@kwg, Kayden), Caio Oliveira, (@cmarcelo, cmarcelo), Ian Romanick (@idr, idr) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
GLK (Gemini Lake) |
Kenneth Graunke, (@kwg, Kayden), Caio Oliveira, (@cmarcelo, cmarcelo), Ian Romanick (@idr, idr) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
KBL (Kaby Lake) |
Kenneth Graunke, (@kwg, Kayden), Caio Oliveira, (@cmarcelo, cmarcelo), Ian Romanick (@idr, idr) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
JSL (Jasper Lake) |
Lionel Landwerlin, (@llandwerlin, dj-death), Caio Oliveira, (@cmarcelo, cmarcelo), Ian Romanick (@idr, idr) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
TGL (Tiger Lake) |
Lionel Landwerlin, (@llandwerlin, dj-death), Caio Oliveira, (@cmarcelo, cmarcelo), Ian Romanick (@idr, idr) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
ADL (Alder Lake) |
Lionel Landwerlin, (@llandwerlin, dj-death), Caio Oliveira, (@cmarcelo, cmarcelo), Ian Romanick (@idr, idr) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
RPL (Raptor Lake) |
Lionel Landwerlin, (@llandwerlin, dj-death), Caio Oliveira, (@cmarcelo, cmarcelo), Ian Romanick (@idr, idr) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
ARM CI Jobs¶
CI job |
Driver maintainers |
CI job maintainers |
Build Options |
|---|---|---|---|
lima-mali450 |
Your Name Here (gitlab:@username, irc:username) |
Your Name Here (gitlab:@username, irc:username) |
|
panfrost-g52 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
panfrost-g57 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
panfrost-g72 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
panfrost-g610 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
panfrost-g925 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
Broadcom CI Jobs¶
CI job |
Driver maintainers |
CI job maintainers |
Build Options |
|---|---|---|---|
rpi3 |
Your Name Here (gitlab:@username, irc:username) |
Your Name Here (gitlab:@username, irc:username) |
|
rpi4 |
Your Name Here (gitlab:@username, irc:username) |
Your Name Here (gitlab:@username, irc:username) |
|
rpi5 |
Your Name Here (gitlab:@username, irc:username) |
Your Name Here (gitlab:@username, irc:username) |
|
Freedreno CI Jobs¶
CI job |
Driver maintainers |
CI job maintainers |
Build Options |
|---|---|---|---|
a306 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
a530 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
a618 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
a660 |
Your Name Here (gitlab:@username, irc:username) |
Sergi Blanch Torne (@sergi, sergi), Valentine Burley (@Valentine, valentine), Daniel Stone (@daniels, daniels) |
|
a750 |
Your Name Here (gitlab:@username, irc:username) |
Your Name Here (gitlab:@username, irc:username) |
|