Commands · reference

vmlab fastpath

3 min read · 2026-09-02 · vmlab 0.9

vmlab fastpath shows which network fast-path tier the supervisor selected for switch traffic, and why the tiers it skipped were unavailable. The tiers are the substitutable backends of the userspace fabric described in Networking.

sh
vmlab fastpath
OptionMeaning
-h, --helpPrint help.

The command starts the supervisor if it is not running, like every other verb, because the answer is the probe result of the daemon that will carry the traffic. It prints one line naming the tier and the mode it was selected under, then one line per skipped tier with the reason.

The tier is one of afxdp, tap devices with in-kernel XDP forwarding; sockmap, kernel socket splicing on the stream-socket ports; or userspace, the plain switch that is always available. The mode is the fastpath key in the host configuration, overridden by the VMLAB_FASTPATH environment variable: auto probes afxdp and otherwise falls back to userspace, off never uses a kernel path, and sockmap or afxdp probe only that tier. auto never picks sockmap, because it measures slower than the userspace fabric, and the reasons say so. A forced tier whose probe fails degrades to userspace rather than stopping the daemon. A vmlab built without the ebpf feature reports both kernel tiers unavailable for that reason.

sh
$ vmlab fastpath
network fast path: userspace (mode auto)
  afxdp unavailable: vmlab was built without the `ebpf` feature
  sockmap unavailable: not used in auto mode: af_unix kernel splicing measures slower than the userspace fabric (psock backlog workqueue); force with `fastpath = "sockmap"` to evaluate it

Exit status is 0 on success. The command discards the protocol error code and exits 1 for any failure, including a supervisor that does not come up.