Virtual & unusual hardware

Virtio 9P filesystem transport over modern PCI

A 9P export is a guest-host filesystem transport with an explicit mount tag.

On this page
  1. Overview & identity
  2. Driver & binding
  3. Firmware
  4. Read-only diagnostics
  5. Limitations & related issues
  6. References

Overview & identity

The checked modern PCI rule maps 1af4:1049 to virtio type 9 (9p). This is a virtual function identity, not the host hardware model. Transitional PCI IDs use a different subsystem-ID rule and are deliberately not inferred here.

Curated identifiers
pci 1af4:1049

A numeric match establishes a candidate family within the reviewed evidence. Marketing names, board variants, subsystem conditions and successful operation remain separate questions.

Driver & binding

9pnet_virtio handles type 9 as a transport. The 9p filesystem implementation and a chosen mount are separate layers; a detected virtio function does not mean the host share is mounted in the guest. lspci can therefore correctly report virtio-pci while the child function is bound to 9pnet_virtio.

  • virtio_pci — kernel driver/module candidate
  • 9pnet_virtio — kernel driver/module candidate

Detected, bound, operational: learn the difference

Firmware

No host payload established here

No external firmware filename was established in the checked driver path. This does not describe firmware stored inside the device.

Inspect firmware packaging on your distribution

Read-only diagnostics

Run one displayed command at a time. Replace uppercase placeholders with the affected device, interface or module from your own output. Commands are never executed here. Read-only output can still contain private identifiers.

Inspect the PCI function and binding

lspci -nnk -s BDF

Replace BDF with the complete address, for example 0000:00:14.0. This read-only query needs pciutils and normally no sudo. “Kernel driver in use” is observed binding; “Kernel modules” lists candidates.

Inspect the virtio child function driver

ls -l /sys/bus/pci/devices/BDF/virtio*/driver

Replace BDF with the full observed PCI address. Read the child driver link without sudo; virtio_pci is the PCI transport, while this link belongs to the function driver. A missing child or link means that this layer was not observed.

Read available 9P mount tags

cat /sys/bus/virtio/drivers/9pnet_virtio/virtio*/mount_tag

Read documented transport metadata without sudo. Each value names an offered export; an available tag is not proof of an active mount or accessible files.

Limitations & related issues

The PCI pair does not reveal the host export directory, permission mapping or cache policy. Listing mount tags is read-only; this profile never mounts a share or changes filesystem access.

These guides are linked for relevant observations, not as known defects of every device in this family.

Choose a hardware diagnostic workflow · Inspect a log excerpt in Fix Lab

References

Source review records a checked implementation or document, not a reproduced hardware test. Version-specific tables do not establish a minimum kernel or guaranteed operation.