![삭제된 iommu 장치를 다시 추가할 수 있나요?](https://linux55.com/image/102452/%EC%82%AD%EC%A0%9C%EB%90%9C%20iommu%20%EC%9E%A5%EC%B9%98%EB%A5%BC%20%EB%8B%A4%EC%8B%9C%20%EC%B6%94%EA%B0%80%ED%95%A0%20%EC%88%98%20%EC%9E%88%EB%82%98%EC%9A%94%3F.png)
PCI 패스스루를 사용하고 있습니다. 불행히도 내 카드는 USB 컨트롤러와 동일한 irq를 공유합니다. 나는 이 프로그램을 사용합니다:
공유 irq를 찾으세요. 제 경우에는 21 lspci -s 00:05:00 -vvv를 반환합니다.
인터럽트 번호 찾기
cat /proc/interrupts|grep 21:
USB2를 돌려주세요
usb2를 검색해 보세요
find /sys/devices/pci0000\:00/0000\:00\:* -iname usb2
PCI 주소를 반환하므로 해당 주소로 이동하여 USB2 허브 슬롯을 제거할 수 있습니다.
cd /sys/devices/pci0000\:00/0000\:00\:13.2/
echo -n 1 > remove
문제는 usb2 슬롯을 읽는 방법입니다.
이런 질문이 있는 경우: 왜 슬롯을 제거해야 합니까? 대답은 다음과 같습니다. 내 pci 카드는 매우 오래되었고(1999!) irqs를 공유하지 않습니다. 따라서 이 카드로 가상 머신을 실행하는 경우 인터럽트는 고유해야 합니다. 그렇지 않으면 qemu/libvirt에서 오류가 발생합니다.