Home / Alt manpages / vdpa-mgmtdev(8)

  • vdpa-mgmtdev(8)
  • Admin command
  • linux

Inspect vDPA Management Devices Before Creating a Device

vdpa mgmtdev show is the read-only way to see which vDPA management devices the kernel currently exposes, before you ever try to create one. Skip this step and vdpa dev add just fails with no clue why.

You need the vdpa utility from the iproute2 package. These examples were checked with Ubuntu's iproute2 version 6.1.0-1ubuntu6.4. You also need a kernel and driver that expose the vDPA Netlink interface, plus a management device supplied by a vDPA provider if you expect a non-empty result.

Allow about five minutes. No elevated privileges are required for these inspection commands in the usual configuration. If your system restricts Netlink access, retry the same command with sudo only after checking local policy.

1. Confirm the command version

Check which implementation is installed first. This catches a missing command and makes later differences easier to explain:

vdpa -V

On the reference system, this identifies vdpa utility, iproute2-6.1.0. The package revision and the utility's reported upstream version are separate facts, so record both when troubleshooting.

2. List every management device

Run the command with no device name. The argument is optional, and omitting it asks for every management device:

vdpa mgmtdev show

Read the names and attributes as discovery data. A name such as bar is only an example from the installed manual, not a device that should exist on every host. Do not copy a name from a different server without first confirming it appears in this list.

If the command completes but lists nothing, there may simply be no provider registered right now. That is different from failing to contact the vDPA Netlink family. Preserve the exact exit status and error text before touching drivers, modules or services.

3. Inspect one named device

Take a name from the previous result and pass it as the optional MGMTDEV argument:

vdpa mgmtdev show <MGMTDEV>

For example, if discovery really did list bar, the command becomes:

vdpa mgmtdev show bar

This narrows the response to the selected management device, handy when several providers are installed. It still only displays attributes: mgmtdev has no add, delete or change operation, so there is no undo step to worry about in this guide.

4. Diagnose a failed query

On the reference host, every query here returned Failed to connect to vdpa Netlink because the required interface was not available. Treat that as a host capability or kernel integration problem, not as evidence that a management device called bar exists or is missing.

Collect the basics without modifying the system:

command -v vdpa
vdpa -V
vdpa mgmtdev show
uname -r

Check that vdpa resolves to the expected iproute2 installation, compare the reported utility version with the package you administer, and save the kernel release alongside the exact error. Then check your distribution's vDPA driver and kernel documentation. Loading a driver, changing module configuration or restarting a service is outside this read-only inspection and can affect running workloads.

A named query can also fail simply because the name is wrong or has disappeared since discovery. Re-run the all-devices query and use a currently returned name. Do not guess names, and do not move on to vdpa dev add until management-device discovery is working cleanly.

How this fits the next step

A management device is the control point a vDPA provider registers. This command shows which control points are visible; it does not show every vDPA data-path device and does not create one. Once a provider is visible, consult vdpa-dev(8) for device operations and check its prerequisites before making a change. Keeping discovery and mutation separate means a mistyped provider name stays a typo, not an accidental provisioning attempt.

Done means

  • Confirmed the version. vdpa -V identifies the installed iproute2 utility.
  • Discovered the providers. vdpa mgmtdev show either lists management devices or gives you a saved, understood error.
  • Used real names. Any named query uses a name copied from current discovery output.
  • Left the host alone. No device, driver, module or service was changed while inspecting it.