Virtualization Station: Hauppauge PCIe TV-Tuner durchreichen.

Hallo zusammen.

Ich habe ein QNAP TVS-h1288x, auf dem QuTS hero h6.0.2.3591 läuft, zusammen mit Virtualization Station (Version 4.2.1.66). Ich habe eine virtuelle Maschine eingerichtet, auf der Linux Mint 22.3 läuft und das MythTV-Projekt betreibt (ein DVR/Medienserver).

Ich würde gerne meine Hauppauge WinTV-quadHD (PCIe QuadTV-Tuner) in meiner VM zum Laufen bringen. Der Tuner wird auf der Konfigurationsseite der VM nicht als PCIe-Gerät aufgelistet. Weiß jemand, ob es möglich ist, diesen Tuner zum Laufen zu bringen?

Danke.

Melde dich über SSH bei virsh an

Hi @dolbyman

Danke für die Antwort…

Wenn ich den Befehl „virsh nodedev-list“ ausführe, bekomme ich nur die Fehlermeldung „Fehler: Konnte Knotengeräte nicht zählen“.

Gibt
lspci -k
den Tunerkarte aus?

Das System erkennt die Karte, zeigt aber keine Beschreibung an. (Bei der Hälfte der anderen PCI-Geräte werden ebenfalls keine Beschreibungen angezeigt.)

04:00.0 Class 0400: 14f1:8880
05:00.0 Class 0400: 14f1:8880

Schau mal, ob du es so einbinden kannst:

Du musst hier die richtige VM-ID finden:
.qpkg/QKVM/usr/etc/libvirt/qemu

Entschuldigung, aber ich komme mit diesen Anweisungen langsam etwas durcheinander.
Ich habe keine Ahnung, ob SELINUX aktiviert ist oder nicht. Alle dafür vorgesehenen Tools scheinen nicht zu existieren, daher vermute ich, dass es nicht aktiviert ist.

Wenn ich versuche, “virsh nodedev-dumpxml pci_0000_04_00_0” auszuführen, bekomme ich folgenden Fehler:

error: Could not find matching device ‘pci_0000_04_00_0’
error: Failed to connect socket to ‘/share/homes/brian/.cache/libvirt/virtnodedevd-sock’: No such file or directory

Ich habe es auch ohne das “0000” und auch mit dem Gerät “05_00_0” versucht. Gleiches Ergebnis.

Ich habe die einzige XML-Datei im von dir angegebenen Pfad durchsucht, aber die TV-Tuner sind dort nicht aufgeführt. Diese XML scheint nur die Geräte zu enthalten, die aktuell der VM zugeordnet sind.

Ich glaube, QNAP hat diese Befehle ausgehebelt.

Später würdest du virsh benutzen, um die XML-Datei deiner VM zu bearbeiten und das Gerät hinzuzufügen.

Ich habe virsh vorher schon benutzt, um eine virtuelle Netzwerkkarte in eine VM einzufügen, damit ein verschachtelter Proxmox-Testaufbau funktioniert – aber dabei handelte es sich um eine virtuelle Karte und nicht um ein physisches Gerät.

Vielleicht kann ja jemand, der tatsächlich eine unterstützte PCIe-Karte (GPU) hat, seine VM-XML-Datei prüfen und schauen, wie diese in die VM durchgereicht wird (dann könntest du das Gleiche für die TV-Karte machen).

Ich habe dem XML-Dokument die Ergänzungen hinzugefügt, die meiner Meinung nach richtig sein könnten, um zu sehen, ob ich so den TV-Tuner sichtbar machen kann. Sobald ich die VM neu gestartet habe, wurde das XML jedoch wieder auf die ursprüngliche Konfiguration zurückgesetzt. Ich bin mir nicht sicher, ob das direkte Bearbeiten des XML wirklich eine brauchbare Lösung ist.

Wie auch immer, @dolbyman,
ich danke dir für die Unterstützung, die du mir gegeben hast.

Achte darauf, dass du nicht die VM-Oberfläche in VMStation öffnest, da sonst alle Änderungen überschrieben werden (vielleicht auf Autostart setzen).

Hallo thebcfactor,

vielen Dank für den Bericht. Mit den derzeit verfügbaren Informationen können wir die Ursache noch nicht feststellen. Bitte eröffne ein Support-Ticket und gewähre Remote-Zugriff auf das NAS. Unser F&E-Team kann dann prüfen, ob die PCIe-TV-Karte vom System korrekt erkannt wird, und etwaige Probleme mit der Passthrough-Kompatibilität untersuchen. Sobald die Protokolle und der Systemstatus vorliegen, können wir eine genauere Diagnose stellen.

@dolbyman
Danke für den Hinweis. Mir war genau dieses Problem bewusst, aber es scheint auch aufzutreten, wenn man die Virtualization Station-Oberfläche gar nicht öffnet.

@JasonH
Danke für die Rückmeldung. Inzwischen habe ich eine andere Lösung für meine Probleme gefunden, die gut zu funktionieren scheint. Es ist also nicht nötig, das weiter zu verfolgen.

Vielen Dank an alle für die Hilfe.

Es wäre super, wenn du deine Lösung für künftige Leser:innen offenlegen würdest.

Freut mich zu hören, dass du eine Lösung gefunden hast, die für dich funktioniert! Würdest du teilen, wie du das Problem gelöst hast? Das könnte anderen Nutzern helfen, die auf dasselbe Problem stoßen. Danke!

Hallo bcfactor,

vielen Dank für das Feedback. Seit Virtualization Station 4.2.0 oder neuer hat QNAP die PCIe-Passthrough-Unterstützung deutlich erweitert und zahlreiche frühere Einschränkungen für Gerätekategorien entfernt. Dadurch können nun deutlich mehr PCIe-Geräte direkt einer VM zugewiesen werden.

Beim Hauppauge WinTV-quadHD PCIe TV Tuner können wir derzeit nicht bestätigen, ob die PCI-Klasse innerhalb der unterstützten Passthrough-Kategorien liegt oder ob eine andere Kompatibilitätseinschränkung verhindert, dass er in der Geräteliste erscheint.

Wenn in Zukunft ein Problem auftritt, eröffne bitte ein Support-Ticket und stelle Systemprotokolle sowie Fernzugriffsdaten zur Verfügung. Unser F&E-Team kann dann Vendor-ID, Device-ID und PCI-Klasse prüfen, um die Ursache zu ermitteln und gegebenenfalls zusätzlichen Kompatibilitätssupport zu evaluieren.

Leider will hier wahrscheinlich niemand hören, wie ich das Problem gelöst habe, aber hier ist es trotzdem:

Ich habe die QuTS-Software vom NAS entfernt und sie durch TrueNAS ersetzt. In den letzten neun Monaten hatte ich mit zu vielen Problemen zu kämpfen, sodass ich einfach aufgegeben habe.

Das stimmt nicht – wenn der Wechsel des Betriebssystems zum Erfolg geführt hat, ist das eine absolut sinnvolle Option.

Freut mich, dass es jetzt funktioniert.

Das Problem mit dem PCIe-Passthrough war nicht das Einzige, das zu dieser Entscheidung geführt hat. Ich habe mich etwa neun Monate lang mit einem halben Dutzend Problemen herumgeschlagen. Das war nur der Tropfen, der das Fass zum Überlaufen brachte.

Schade, denn QuTS hat eigentlich eine deutlich benutzerfreundlichere Oberfläche als TrueNAS.

Aber noch einmal: Vielen Dank an dich, dolbyman, an das QNAP-Team und an alle hier im Forum für die ganze Unterstützung, die ich bekommen habe.