YueGuobin caa054986f
fix(controller): keep IOL runner containers off the kernel datapath
The unix-socket container gate matched GNS3_UNIX_SOCKET_NIO in the node
environment only, but the IOL runner reaches the same wiring through the
GNS3_IOL_RUNNER marker: the compute selects IOLDockerVM on it, and that
class forces the AF_UNIX socket pairs whatever the generic knob says —
and the documented environment for those nodes carries only the marker.
Such a container was therefore handed a kernel link its compute cannot
serve. The plain case failed at link creation (no veth end to enslave);
on the switch fast path it was worse — the switch defers a join against a
missing anchor by design (a link to a stopped node must not fail), so the
cable was silently dead instead of merely slow.

Match both markers, through the shared is_iol_runner_environment helper so
the controller and the compute select the same way. Verified live on a
real server: docker↔IOL-XE and switch↔IOL-XE links stay relay while the
docker↔switch control link still takes the kernel datapath.
2026-10-06 00:21:09 +08:00
..
2026-09-27 18:59:42 +02:00
2026-08-18 18:02:53 +02:00
2026-10-03 19:43:58 +03:00
2026-09-27 19:10:11 +02:00
2024-04-22 18:51:29 +07:00
2026-10-03 19:43:58 +03:00
2026-09-27 20:21:12 +02:00