KVM USB durchreichen passthrough

Skudrinka

Vice Admiral
Registriert
Sep. 2008
Beiträge
6.818
Schönen Sonntag,

da ich mit meinen geringen Latein-Kenntnisse am Ende bin..
Könnt ihr mir vielleicht helfen. :)

Vorab:
Handelt es sich um ein MC12-LE0 Serverboard, auf dem per internen USB Stick ein OMV installiert ist.
Im OMV habe ich eine Windows VM eingerichtet.

Nun benötigt diese VM zugriff auf USB.
Klappt leider nicht.

Zwar kann ich beispielsweise einen USB anhängen und explizit dieses Gerät der VM zuweisen, doch beim Trennen und wieder einstecken, muss ich das Gerät erneut der VM zuweisen.
Das ist nicht Sinn und Zweck.

Ich benötige vollen Zugriff auf USB an der VM.

Liegt es daran, dass ich dafür eine/n USB HBA Karte/Controller benötige?


Diese Positionen habe ich zur Verfügung, kann zwar alle einstellen mit aktivierten Häkchen bei passthrough, doch wird kein USB-Gerät automatisch weitergereicht...
Erst wenn ich, wie bereits geschrieben, das Gerät als solches, welches dann in der Liste auftaucht, durchreiche.

USB.JPG


Sorry für die Unwissenheit 😄
 
Skudrinka schrieb:
Liegt es daran, dass ich dafür eine/n USB HBA Karte/Controller benötige?
Angeblich geht's so, aber ich habe nach etwas Rumprobieren lieber 10€ für ne PCIe-USB-Karte ausgegeben und die durchgereicht, statt da weiter rumzufummeln.
 
  • Gefällt mir
Reaktionen: Skudrinka
Skudrinka schrieb:
Ich benötige vollen Zugriff auf USB an der VM.
pseudopseudonym schrieb:
ne PCIe-USB-Karte ausgegeben und die durchgereicht, statt da weiter rumzufummeln.
was in Summe auch immer die beste Lösung ist, einen kompletten separaten PCIe USB Controller weiterreichen ... ansonsten bleiben nur udev rules um die USB Geräte automatisch ...
 
  • Gefällt mir
Reaktionen: Skudrinka
pseudopseudonym schrieb:
aber ich habe nach etwas Rumprobieren lieber 10€
Ist da was zu empfehlen?
Und reicht da eine so günstige Karte?

Denn wenn man explizit nach HBA USB Karten guckt, findet man welche aus den Serverbereich die gebraucht schon 3 stellig kosten..
 
Skudrinka schrieb:
Und reicht da eine so günstige Karte?
Ja. Ich hab da immer ne schön billige Brot-und-Butter-Karte ohne irgendwelche Fancy-Features genommen.

Hast du PCIe-Passthrough schon mal gemacht? IOMMU-Groups sind da ein Thema. Im Zweifel mal im BIOS nach Optionen bei Problemen gucken und/oder verschiedene PCIe-Slots probieren.
 
  • Gefällt mir
Reaktionen: Skudrinka
pseudopseudonym schrieb:
Hast du PCIe-Passthrough schon mal gemacht?
Nun... Ich habe gedacht/gehofft, dass mir die Karte einfach in der Auswahl (s.o.) angezeigt wird und gut ist?
 
ich bin jetzt kein OMV Nutzer, daher nur "rudimentär"

1/ Karte einauen
2/ BIOS schauen das vt-d aktiviert ist und iommu supportet ist
3/ am Besten noch "stubben", vfio bind machen das die Karte für den Host nicht nutzbar ist, kein muss ...
4/ virt manager ? um pcie passthrough für die VM einzurichten, oder die xml manuell anpassen ...

zu 4/ einlesen wie das bei OMV umzusetzen wäre, wobei bei kvm ja virt manager gehen sollte ...

da können andere sicher besser Auskunft geben ;)
 
  • Gefällt mir
Reaktionen: Skudrinka
Skudrinka schrieb:
Nun... Ich habe gedacht/gehofft, dass mir die Karte einfach in der Auswahl (s.o.) angezeigt wird und gut ist?
Mit Glück ja. Das stub-/bind-Zeug muss meiner Erfahrung nach bei USB-Controllern nicht unbedingt sein, ist eher bei GPUs wichtig.

Wenn nicht, kannst du auch nochmal nachfragen/nachgooglen. Ist aber alles kein Hexenwerk, das wird schon.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Skudrinka
pseudopseudonym schrieb:
Wenn nicht, kannst du auch nochmal nachfragen/nachgooglen. Ist aber alles kein Hexenwerk, das wird schon.
Gut, Karte ist da und eingebaut..
Doch nein.
Sie wird erkannt und kann sie nach der oben genannte Methode benutzen, aber den Controller kann ich nicht durchreichen. Dazu fehlt mir die passende Option?

Wie vorgehen?

Gleichzeitig bin ich schon die ganze Zeit am gogglen, doch so richtig komm ich nicht weiter...
 
@Skudrinka Versuchst du den USB-Controller durchzureichen, oder das PCIe-Gerät?
 
  • Gefällt mir
Reaktionen: Skudrinka
pseudopseudonym schrieb:
Versuchst du den USB-Controller durchzureichen, oder das PCIe-Gerät?
Naja, am liebsten den Contoller?
so dass ich uneingeschränkten zugriff in der VM darauf habe?
Ergänzung ()

lspci | grep USB
Code:
01:00.0 USB controller: Advanced Micro Devices, Inc. [AMD] Device 43ee
08:00.0 USB controller: Fresco Logic FL1100 USB 3.0 Host Controller (rev 01)
0a:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host

Der Fresco ist die neue USB-Karte.

lsusb
Code:
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 008: ID 046b:ff10 American Megatrends, Inc. Virtual Keyboard and Mouse
Bus 001 Device 007: ID 046b:ffb0 American Megatrends, Inc. Virtual Ethernet
Bus 001 Device 006: ID 046b:ff31 American Megatrends, Inc. Virtual HardDisk Device
Bus 001 Device 005: ID 046b:ff20 American Megatrends, Inc. Virtual Cdrom Device
Bus 001 Device 004: ID 046b:ff01 American Megatrends, Inc. Virtual Hub
Bus 001 Device 003: ID 05e3:0745 Genesys Logic, Inc. Logilink CR0012
Bus 001 Device 002: ID 8564:1000 Transcend Information, Inc. JetFlash
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Hilft das? :)
 
@Skudrinka Du musst das PCIe-Gerät durchreichen. Damit erreichst du genau das, was du willst.

Macht's wie hier, musst aber das richtige PCIe-Gerät erwischen:
IMG_20240304_175931_057.png
 
  • Gefällt mir
Reaktionen: Skudrinka
pseudopseudonym schrieb:
Macht's wie hier, musst aber das richtige PCIe-Gerät erwischen:
So einfach scheint das in OMV nicht zu sein.

Ich werde es über die Kommandozeile machen müssen?!

Diese Auswahlmöglichkeiten habe ich:


Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 001 Device 002: ID 8564:1000 Transcend Information, Inc. JetFlash

Bus 001 Device 003: ID 05e3:0745 Genesys Logic, Inc. Logilink CR0012

Bus 001 Device 004: ID 046b:ff01 American Megatrends, Inc. Virtual Hub

Bus 001 Device 005: ID 046b:ff20 American Megatrends, Inc. Virtual Cdrom Device

Bus 001 Device 006: ID 046b:ff31 American Megatrends, Inc. Virtual HardDisk Device

Bus 001 Device 007: ID 046b:ffb0 American Megatrends, Inc. Virtual Ethernet

Bus 001 Device 008: ID 046b:ff10 American Megatrends, Inc. Virtual Keyboard and Mouse

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Nichts dabei.
 
@Skudrinka Mach mal einen Screenshot, bei dem man etwas mehr erkennt. Ich hab als GUI virt-manager, kenne deine nicht.
Ergänzung ()

Das, was du hier machen musst, hat jedenfalls nichts mit USB, sondern mit PCI zu tun.
 
  • Gefällt mir
Reaktionen: Skudrinka
Und wo ist der Knopf, um USB durchzureichen? Ist an der Stelle auch was mit PCI?
 
  • Gefällt mir
Reaktionen: Skudrinka
pseudopseudonym schrieb:
nd wo ist der Knopf, um USB durchzureichen?
Ziemlich mittig der Leiste. Das USB-Symbol.
pseudopseudonym schrieb:
Ist an der Stelle auch was mit PCI?
Nein.
In der Auflistung, s.o. ist kein Controller vorhanden.
Nur die einzelne Ports.
 
@Skudrinka Du bist da irgendwie falsch. Das alles hat gerade erstmal absolut nichts mit USB zu tun, also auch nicht mit USB-Ports. Es geht darum, ein PCI-Gerät durchzureichen. Du kannst auch mal nach GPU-Passthrouh googlen, das geht so ähnlich.
 
  • Gefällt mir
Reaktionen: Skudrinka
pseudopseudonym schrieb:
Du bist da irgendwie falsch. Das alles hat gerade erstmal absolut nichts mit USB zu tun,
Mehr Möglichkeiten habe ich in dem GUI nicht.
Ergänzung ()

pseudopseudonym schrieb:
also auch nicht mit USB-Ports.
Naja, schon.
Denn die Ports, bzw. Geräte die an Ports hängen, kann ich durchreichen.
 
Zurück
Oben