[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Semi-OT: KVM PCI Passthrough und Shared Interrupts



Hallo zusammen,

meine heutige Frage ergibt sich aus der Diskussion über ISDN, Fax usw.
und dem Gedanken, ISDN noch über Wheezy hinaus in einer dedizierten
Squeeze-VM zu betreiben.

Ich möchte also gern meine ISDN-Karte in eine KVM-basierenden VM
verfügbar machen. Der Host verfügt über eine aktuelles Board nebst
Prozessor, IOMMU wird unterstützt und ist aktiv. Betrieben wird er mit
Squeeze und dem 3.2-Backports-Kernel wie auch libvirt und KVM aus den
Backports.

Ein einziges Mal hat es funktioniert, während in der VM der Debian
Installer vom CD-Image lief. Zu diesem Zeitpunkt"verschwand" das Device
aus dem lspci des Hosts und erschien im lspci auf der Konsole des
Installers. Leider hat es den Reboot aber nicht überlebt.

Denn seither wird der Interrupt meiner ISDN-Karte geshared. Offenbar war
das vorher nicht der Fall, ich habe nicht danach geschaut, da es sofort
lief. Nach dem Booten des Hosts wird der IRQ zunächst auf 255 geroutet,
was offenbar für nicht konfiguriert steht, ab dem ersten Versuch, dieses
Gerät als Device einem Guest hinzuzufügen, wird er als 16 ausgewiesen,
der noch von zwei anderen Geräten verwendet wird.

Es scheitert dann am IRQ sharing: "Perhaps you are assigning a device
that shares an IRQ with another device?"

Man findet jede Menge Hinweise darauf, dass PCI Passthrough in diesem
Fall nicht möglich ist und man das Sharing unterbinden müsse. Daneben
finden sich Hinweise, dass in neue KVM-Versionen Patches eingeflossen
seien, die in bestimmten Fällen doch den Betrieb solcher Devices
ermöglichen.

Einen Hinweis, wie man IRQ Sharing unterbinden könnte fand ich nicht. Es
heißt, umstecken, Geräte deaktivieren etc. Aber einen Weg, der eine
stabile Lösung verspricht, gibt es offenbar sind.

Ich zweifle aber gerade, denn wenn Probieren und Hoffen, die einzige
Möglichkeit darstellen soll, dann kann PCI Passthrough unter diesen
Umständen niemals eine stabile Lösung darstellen, denn es besteht ja die
Gefahr, dass durch irgendeine Handlung, die Interruptverteilung geändert
wird und das nicht mehr revidierbar wäre.

Gibt es Möglichkeiten, die IRQ-Zuweisung zu beeinflussen? (Im BIOS gibt
es, wie ich feststellte, keine Möglichkeiten. Geräte, die ich nicht
brauche, z.B. serielle Ports, habe ich ohnehin deaktiviert.)

Viele Grüße

Michael

-- 
EDV-Serviceteam Annika & Michael Hierweck GbR
Egerstraße 53, 44225 Dortmund (Germany)
http://www.edv-serviceteam.net


Reply to: