5–7 Oct 2026
Europe/Prague timezone

Shared devlink for cross-function coordination

6 Oct 2026, 12:00
45m
"Club B" (Prague Congress Centre)

"Club B"

Prague Congress Centre

53
Birds of a Feather (BoF) Birds of a Feather (BoF)

Speaker

Cosmin Ratiu (NVIDIA)

Description

Every devlink instance today is scoped to a single function - one PF, VF, or SF. That breaks for state belonging to the physical device rather than
any one function: siblings must coordinate on shared resources, but there is no standard mechanism to do so. The result is per-vendor workarounds, brittle cross-function locking, and latent deadlock risk baked into every driver that tries.

We fix this at the infrastructure level with the shared devlink instance (shd): a reference-counted object that all PFs of the same NIC join, providing a single lock domain per physical device while keeping per-function instances nested underneath - so existing tooling, namespacing, and uAPI contracts are undisturbed. Merged in Linux 7.1.

The first feature built on top is cross-function devlink-rate. TX scheduling hierarchies have always been confined to a single devlink instance; modern NICs can schedule across VFs and SFs spanning multiple PFs in a LAG. We extend devlink-rate to cross instance boundaries, serializing QoS hierarchy changes on the common ancestor lock. Merged for Linux 7.3.

The talk covers the design rationale, the mlx5 implementation, and a live cross-eswitch demo. We'll close by mapping out what else the shared devlink infrastructure unlocks - PTP synchronization, eswitch coordination, and other problems that have been quietly waiting for exactly this primitive.

Author

Presentation materials

There are no materials yet.