LINUX.ORG.RU
ФорумAdmin

Очередной проброс PCI в kvm


0

1

Пытаюсь пробросить древнюю плату Farsync T1U в kvm гостя, информация о ней из lspci:

01:05.0 Communication controller: FarSite Communications Ltd FarSync T1U (1 port X.21/V.35/V.24) (rev 03)
    Subsystem: PLX Technology, Inc. Device 9054
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 64 (1000ns min, 10000ns max), Cache Line Size: 256 bytes
    Interrupt: pin A routed to IRQ 19
    Region 0: Memory at fa1ffc00 (32-bit, non-prefetchable) [size=256]
    Region 1: I/O ports at a800 [size=256]
    Region 2: Memory at fa200000 (32-bit, non-prefetchable) [size=1M]
    Region 3: Memory at fa1ff800 (32-bit, non-prefetchable) [size=16]
    Capabilities: [40] Power Management version 1
        Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
        Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Capabilities: [48] CompactPCI hot-swap <?>
    Kernel driver in use: fst
    Kernel modules: farsync

Добавляю что через virt-manager что вручную через virsh edit ошибка в логах виртуалки

Failed to assign irq for "hostdev1": Input/output error
Perhaps you are assigning a device that shares an IRQ with another device?
kvm: -device pci-assign,host=00:1a.2,id=hostdev1,configfd=25,bus=pci.0,addr=0x6: Device 'pci-assign' could not be initialized
2013-12-24 14:47:47.274+0000: shutting down

IRQ она действительно шарит еще с двумя устройствами. Можно ли что-то сделать или без поддержки MSI со стороны устройства уже ничего не поделаешь? Тестирую на ядре 3.12.6, QEMU emulator version 1.2.0

переткнуть в другой pci слот, не?

Yur4eg ★★ ()

Переткнуть или выключить все ненужные устройства

zgen ★★★★★ ()

используй эту опцию

allow_unsafe_assigned_interrupts

+ используй vfio

anonymous ()

allow_unsafe_assigned_interrupts=1 не помогает, может не так делаю?

# cat /etc/modprobe.d/qemu-kvm.conf 
options kvm_intel nested=1
options kvm allow_unsafe_assigned_interrupts=1

перетыкать бесполезно, слота два и во втором история такая же

что касается отключить, я попробую, но это как полумера, уменьшать функциональность сервера не желательно. Хотелось бы нормальное решение.

donhenaro ()

а то же самое на центоси с родным едром?

anonymous ()

через отключение устройств ожидаемо получилось, но как и писал это полумера

буду пробовать через vfio. Вообще в идеале проброс нужен в Astra Linux 1.3 ядро там 3.2 и перекомпиливать его нельзя.

donhenaro ()
Ответ на: комментарий от donhenaro

через отключение устройств ожидаемо получилось,

я думаю хватит и просто драйверы выгрузить

дело всё в том, что legacy pci bridge не получится порезать по устройствам, это ограничение работы legacy pci --> pcie --> iommu

dimon555 ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.