SR-IOV описывает возможность представить физическое устройство как несколько виртуальных. Число уже включённых VF сообщает sriov_numvfs; аппаратная возможность и включённое количество — разные сведения.
Почему это важно
Подготовка адаптера для виртуальных машин начинается с карты функций. Полезно установить принадлежность каждой VF, её адрес и состояние включения. Похожее название адаптера и порядковый номер функции эту карту не заменяют.
Что подтверждено
SR-IOV — расширенная возможность PCI Express, благодаря которой одно физическое устройство представляется как несколько виртуальных: PF и VF соответственно.
Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. HOWTO § What is SR-IOV, строки 18–23.
В описанной HOWTO модели возможность SR-IOV по умолчанию выключена, а PF ведёт себя как обычное устройство PCIe.
Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. HOWTO § What is SR-IOV, строки 22–26. Это исходная модель HOWTO, а не показание текущей конфигурации конкретного сервера.
После включения пространство конфигурации каждой VF доступно по собственному Routing ID с номерами шины, устройства и функции. У VF есть PCI Memory Space для отображения её регистров.
Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. HOWTO § What is SR-IOV, строки 25–29.
Ядро рассматривает VF как PCI-устройство, добавленное горячим подключением; для работы ему нужен драйвер, как обычному PCI-устройству.
Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. HOWTO § How can I use the Virtual Functions, строки 53–58. Рассматривается модель ядра, а не физическое извлечение адаптера из сервера.
При аппаратной поддержке SR-IOV и включении возможности драйвером PF ссылка virtfn с индексом N ведёт к записи соответствующей VF в sysfs; индексы начинаются с нуля.
Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. ABI What: …/virtfnN, строки 178–185.
Ссылка physfn у виртуальной функции ведёт к записи той физической функции, с которой эта VF связана.
Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. ABI What: …/physfn, строки 197–203.
При включённой возможности SR-IOV и зависимости, заданной изготовителем, dep_link ведёт к физической функции, от которой зависит данное устройство.
Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. ABI What: …/dep_link, строки 187–195. Это сведения о зависимости. Утверждение не задаёт её электрическое устройство или поведение при отказе.
Не путать
Что проверить
- Запишите адреса PF и VF в снятом состоянии системы.
- Для выбранной VF прочитайте цель physfn.
- Сопоставьте индексы virtfn с адресами записей VF.
- Проверьте, была ли возможность SR-IOV включена при чтении ссылок.
- Сохраните имеющиеся dep_link как отдельные сведения о зависимостях.
- Разделите наличие VF и наличие подходящего драйвера.
Первоисточники
PCI Express I/O Virtualization Howto
The Linux Kernel developers · Linux v6.12, тег от 17.11.2024; последний коммит файла 4f23bd5d09af, committer 2022-07-11
Полный RST: 171 строк. Скачан редактором и прочитан автором 11.09.2026. SHA-256 62669b332bd99190649597ecce75d7a50a75afdb32f352a3546d9195221475ee. Авторская дата последнего коммита 2022-06-07; дата тегирования задаёт редакцию. Страниц в оригинале нет.
Открыть первоисточникLinux PCI sysfs ABI — sysfs-bus-pci
The Linux Kernel developers · Linux v6.12, тег от 17.11.2024; последний коммит файла 759ec2824289, committer 2024-09-06
Полный ABI-текст: 574 строк. Скачан редактором и прочитан автором 11.09.2026. SHA-256 13a73b125e800a57c2ed352f49a85e03a6dfb41eb33d3d498beb9297b92e28d1. Авторская дата последнего коммита 2024-09-04; дата тегирования задаёт редакцию. Страниц в оригинале нет.
Открыть первоисточник