Gibt es eine Möglichkeit per Konsole GPUs ein und auszuschalten?

DJPX

PC-Selbstbauer(in)
Hallo,
Ich nutze derzeitig auf meinem Linux System eine VM mit GPU Passtrought, um Windows zu nutzen. Derzeitig gibt es leider aber noch ein paar Probleme. (Zum Beispiel wenn ich mit dem der Bildschirm beim starten des PCs den Input für die VM, Displayport, eingestellt haben)

Anbindung sieht so aus:
iGPU UHD-Displayport+WQHD-HDMI Monitor <- Für das Hostlinux
RX480 WQHD-Displayport <- Für die VM
(2 Bildschirme ein WQHD und UHD)

Gibt es eine Möglichkeit wie das hier auch für AMD-Karten bzw generell hinzubekommen (am besten für Fedora)?

Das so etwas in der Art aber was aber auch für AMD Karten funktioniert wäre super. Im Moment muss ich den Treiber blacklisten, damit ich das Gerät durch geben kann.
Optimal wäre es wenn ich meine RX 480 solange die VM Aktiv ist in der VM nutzen kann und sobald ich diese abschalte dann wieder für das Hostsystem nutzen kann.
Sonst soll das Hostsystem die IGPU nutzen.

Aktuelle Hardware ist (falls das irgendwie relevant ist)
i7-10700k
RX480
Z490 MSI Mainboard
32 GB RAM

Sonstiges
Betriebsystem: Fedora 34
Virtualisierung: QEMU/KVM

Vielen Dank schon mal für eure Hilfe
 
Solange die VM runtergefahren ist würde ich einfach versuchen via modprobe das passende Kernelmodul/Treiber zu laden. Dann soltle das eigentlich funktionieren. Du musst nur sicherstellen das die VMund eventuell auch Quemu nicht mehr läuft da ich glaube das es sonst zu Problemen kommen wird weil ja dann noch das PCIE Device MApping aktiv ist. Hab das selbst aber auch noch nie gemacht....
Wenn du dann die VM wieder startest musst du halt zuvor auf jeden fall via modprobe das Kernelmodul entladen. Normalerweise verhindert das Blacklisten von Modulen ja nur den Autoload beim Boot.....manuelles laden/entladen via Modprobe sollte gehen..... Das ganze kannst du dann auch wunderbar in nem 3 Zeilen Script hinterlegen.....

Sowas wie:

Start.sh
modprobe -r kernelmodule-für-Host-OS
Starte vm

stop.sh
stoppe vm
modprobe kernelmodule-für-Host-OS

Hier mehr zum Thema Kernel Module:
https://www.tecmint.com/load-and-unload-kernel-modules-in-linux/
 
Zuletzt bearbeitet:
Ok ich werde das mal ausprobieren. Ich hatte öfters gelesen das modprobe und auch schon das blacklisten oft nicht so gut funktioniert und hatte gehofft, das es vielleicht noch eine andere Methode dafür gibt
 
Die Module unter Linux einfach nicht zu laden ist der einfachste Weg.

Für AMD sind das folgende Module:
amdgpu 5869568 5
drm_ttm_helper 16384 1 amdgpu
gpu_sched 24576 1 amdgpu

Schau dir auch mal Wine an. Die Möglichkeit eine GPU der VM zuzuweisen und dann nicht mehr unter Linux nutzen zu können, finde ich nicht gut. Wine hat den großen Vorteil, dass du kein Installiertes Windows brauchst.
 
Zurück