Repository navigation
Commit 10c6821
committed
kvm: the render node must open as the qemu user, not exist for root
The vgem build worked - 'vgem built and loaded' - and qemu still died
with 'egl: no drm render node available' on all four VM jobs. The
mechanism, reproduced locally byte-for-byte: an insmod'd node ships
0600 root:root (devtmpfs's default; the runner's udev rules do not
widen a faux-bus vgem), and the smoke's qemu runs as the runner user -
the workflow's smoke step has no sudo, by design, and the disks it
boots are its own files. qemu's node scan silently skips the EACCES
and reports no node; the action's ls check passed because ls does not
need to open anything.
The node is now chmod'd 666 - the same treatment the kvm rule below
gives /dev/kvm - and the gate is the qemu user's own access(3), so
the next failure, if any, is loud and specific. Validated locally in
the vgem-only namespace: an unprivileged qemu with a 0600 node dies
with the runner's exact error, the same qemu with 0666 gets past EGL
and proceeds to its next argument.1 parent 58ad184 commit 10c6821
1 file changed
Lines changed: 22 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
64 | | - | |
65 | | - | |
66 | | - | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
67 | 86 | | |
68 | 87 | | |
69 | 88 | | |
| |||
0 commit comments