Виртуализация ввода-вывода · проверено по источникам

SR-IOV: привязка виртуальной функции к драйверу

sriov_drivers_autoprobe управляет автоматической привязкой вновь включаемых VF данной PF. driver_override задаёт имя допускаемого драйвера для устройства; смена этого имени сама по себе не выполняет перепривязку.

Также ищут: sriov_drivers_autoprobe · driver_override для VF

Практический смысл

Почему это важно

В плане подготовки VF важно различать настройку будущего включения, правило выбора драйвера и запрос привязки. Записанное имя не означает загруженный драйвер, а изменение autoprobe не меняет уже включённые функции.

Доказательная часть

Что подтверждено

  1. sriov_drivers_autoprobe относится к PF с SR-IOV. Начальное значение 1 означает автоматическую привязку вновь включённых VF к совместимому драйверу.

    Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. HOWTO § SR-IOV API, строки 90–96; ABI What: …/sriov_drivers_autoprobe, строки 364–374.

  2. Ноль в sriov_drivers_autoprobe, записанный до включения VF, отключает автоматическую привязку этих VF к драйверу.

    Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. HOWTO § SR-IOV API, строки 98–104; ABI What: …/sriov_drivers_autoprobe, строки 368–374. Настройка не является запретом последующей явной привязки.

  3. Изменение sriov_drivers_autoprobe не влияет на уже включённые VF. Для описанного сценария ABI требует отключить VF, изменить настройку и включить VF заново.

    Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. ABI What: …/sriov_drivers_autoprobe, строки 376–384. HOWTO отдельно говорит об уже обнаруженных драйвером VF; точная формулировка об уже включённых VF взята из ABI.

  4. driver_override заменяет обычное сопоставление статических и динамических ID: возможность привязки получает драйвер с совпадающим именем. Допускается одно имя без списка через разделители.

    Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. ABI What: …/driver_override, строки 323–342.

  5. Пустая строка в driver_override снимает переопределение и возвращает стандартные правила сопоставления устройства и драйвера.

    Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. ABI What: …/driver_override, строки 331–334.

  6. Запись driver_override не отвязывает устройство от текущего драйвера и не загружает указанный драйвер автоматически; при отсутствии загруженного драйвера с подходящим именем привязка не произойдёт.

    Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. ABI What: …/driver_override, строки 335–342.

  7. Запись адреса PCI-устройства в bind вызывает попытку привязки соответствующего драйвера к устройству. Адрес имеет формат DDDD:BB:DD.F — домен, шина, устройство и функция.

    Граница применимости: Linux v6.12; при поддержке оборудованием и драйвером. ABI What: …/bind, строки 1–15. Сохранено слово attempt: описание запроса не подтверждает успешную работу устройства.

Граница терминов

Не путать

SR-IOV: предел и включение виртуальных функций

Включение VF задаёт состав виртуальных устройств. Для их работы нужен драйвер; sriov_drivers_autoprobe управляет автоматической привязкой вновь включаемых VF. Количество функций и поведение привязки проверяются отдельно.

Перед спецификацией

Что проверить

  1. Укажите PF, к вновь включаемым VF которой относится autoprobe.
  2. Разделите действующие VF и функции следующего включения.
  3. Проверьте порядок настройки autoprobe и включения VF.
  4. Сверьте точное имя в driver_override.
  5. Отдельно зафиксируйте загрузку драйвера, текущую привязку и результат bind.
  6. Согласуйте работу с используемыми 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; дата тегирования задаёт редакцию. Страниц в оригинале нет.

    Открыть первоисточник
Сообщить об ошибке

Опишите проблему — постараемся исправить как можно скорее.

Спасибо!

Получили ваше сообщение.
Подтвердите действие