QEMU: модуль ядра, занесенный в черный список, не препятствует его отображению как доступный в `lspci` - PullRequest
0 голосов
/ 08 июля 2019

Я работаю в QEMU и пытаюсь выяснить, может ли гость по-прежнему использовать устройство PCI без загруженного соответствующего модуля ядра.

Для запуска lspci -v показывает следующее:

00:01.3 Bridge: Intel Corporation ########## PIIX4 ACPI (rev 03)
    Subsystem: Red Hat, Inc Qemu virtual machine
    Flags: medium devsel, IRQ 9
    Kernel modules: i2c_piix4

Перед попыткой удалить i2c_piix4, lsmod подтвердил, что он был загружен.Чтобы удалить его, я отредактировал /etc/modprobe.d/blacklist.conf и добавил строку blacklist i2c_piix4, затем назвал sudo update-initramfs -u и reboot ed.Теперь модуль исчез из lsmod, но все еще указан в lspci.Это все еще верно после modprobe -r.Я правильно внес его в черный список, или мне нужно добавить еще один шаг?

1 Ответ

1 голос
/ 09 июля 2019

lspci показывает оборудование на шине pci - независимо от того, загружен соответствующий модуль ядра или нет.

Чтобы удалить устройство, вы можете сделать это в мониторе qemu по id или найти его с помощью info qtree и info qom-tree и удалить его с помощью device_del.

Но удаление вашего конкретного устройства не поддерживается в архитектуре ps-i440fx.

(qemu) info qom-tree /machine/unattached/device[24]
/device[24] (PIIX4_PM)
  /piix4-pm[0] (qemu:memory-region)
  /acpi-cpu-hotplug[0] (qemu:memory-region)
  /acpi-evt[0] (qemu:memory-region)
  /acpi-tmr[0] (qemu:memory-region)
  /apm-io[0] (qemu:memory-region)
  /bus master container[0] (qemu:memory-region)
  /bus master[0] (qemu:memory-region)
  /acpi-pci-hotplug[0] (qemu:memory-region)
  /pm-smbus[0] (qemu:memory-region)
  /acpi-gpe0[0] (qemu:memory-region)
  /i2c (i2c-bus)
  /acpi-cnt[0] (qemu:memory-region)
(qemu)
(qemu) device_del /machine/unattached/device[24]
Device 'PIIX4_PM' does not support hotplugging
(qemu)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...