USB 컨트롤러를 VFIO 가상 머신에 전달

USB 컨트롤러를 VFIO 가상 머신에 전달

저는 커널 4.14.1에서 qemu 버전 2.10.1을 사용하고 GPU를 통해 Windows 10 VM을 실행하고 있습니다. Intel 기반 USB 컨트롤러를 사용할 수도 있습니다. 여태까지는 그런대로 잘됐다.

내 인텔 USB 컨트롤러가 재설정을 지원하지 않아 문제가 발생합니다. ASMedia를 기반으로 하는 또 다른 온보드 USB 컨트롤러가 있습니다. 재설정을 지원한다고 합니다.

IOMMU group 12
[RESET] 04:00.0 USB controller [0c03]: ASMedia Technology Inc. Device [1b21:2142]

하지만 이를 통과하려고 하면 Intel이 아닌 가상 머신이 부팅되지 않습니다. "dmesg"는 나에게 다음을 제공했습니다.

[  389.368990] device vnet0 entered promiscuous mode
[  389.369151] virbr0: port 2(vnet0) entered blocking state
[  389.369153] virbr0: port 2(vnet0) entered forwarding state
[  390.360933] vfio-pci 0000:01:00.0: enabling device (0000 -> 0003)
[  390.361265] vfio_ecap_init: 0000:01:00.0 hiding ecap 0x19@0x900
[  391.444984] pcieport 0000:00:1c.4: AER: Uncorrected (Non-Fatal) error received: id=00e4
[  391.444999] pcieport 0000:00:1c.4: PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, id=00e4(Requester ID)
[  391.445007] pcieport 0000:00:1c.4:   device [8086:a294] error status/mask=00100000/00010000
[  391.445012] pcieport 0000:00:1c.4:    [20] Unsupported Request    (First)
[  391.445017] pcieport 0000:00:1c.4:   TLP Header: 34000000 04000010 00000000 17ff17ff
[  391.445027] pcieport 0000:00:1c.4: broadcast error_detected message
[  391.445034] pcieport 0000:00:1c.4: broadcast mmio_enabled message
[  391.445036] pcieport 0000:00:1c.4: broadcast resume message
[  391.445041] pcieport 0000:00:1c.4: AER: Device recovery successful
[  391.445153] vfio_ecap_init: 0000:04:00.0 hiding ecap 0x19@0x200
[  393.781020] pcieport 0000:00:1c.4: AER: Uncorrected (Non-Fatal) error received: id=00e4
[  393.781033] pcieport 0000:00:1c.4: PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, id=00e4(Requester ID)
[  393.781041] pcieport 0000:00:1c.4:   device [8086:a294] error status/mask=00100000/00010000
[  393.781047] pcieport 0000:00:1c.4:    [20] Unsupported Request    (First)
[  393.781052] pcieport 0000:00:1c.4:   TLP Header: 34000000 04000010 00000000 17ff17ff
[  393.781061] pcieport 0000:00:1c.4: broadcast error_detected message
[  393.781079] pcieport 0000:00:1c.4: broadcast mmio_enabled message
[  393.781082] pcieport 0000:00:1c.4: broadcast resume message

두 USB 컨트롤러 모두 자체 IOMMU 그룹에 속하며 다른 컨트롤러와 공유되지 않습니다.

왜 이런 일이 발생합니까? ASMedia에는 ​​제가 인식하지 못하는 일부 필수 하드웨어 기능이 누락되어 있습니까?

관련 정보