PCI Passthrough Error 43

HansPeter12

Member
Dec 10, 2019
37
0
11
23
Hallo liebe Community,

ich versuche seit Tagen vergebens meine GPU in eine Windows VM einzubinden. Angezeigt wird sie mir im Geräte-Manager auch. Leider wird mir der Fehlercode 43 angezeigt.

Im Grunde habe ich ich jetzt eine 1050ti und eine 560ti zur Verfügung(Da ich gelesen habe das man möglicherweise auch 2 Grafikkarten braucht). Ich hänge mal sämtliche conf-Dateien an vielleicht lässt sich etwas daraus erkennen.
Intel Xeon E3 1231v3
Nvidia Gtx 1050ti
Nvidia Gtx 560ti
Asus H97-plus
Vt-d ist im Bios aktiviert.
(Wenn ich die Maschine im SeaBIOS Modus starte steht im Task-Manager Virtueller Computer, also scheint hidden=1 nicht zu funktionieren?)
1598509268581.png
1598509252628.png
Leider startet die VM nicht einmal sobald ich BIOS: OVMF auswähle, dann kommt nur dieserer Error:
1598509286112.png
1598509294730.png
Danke für eure Hilfe!
MFG
 
Last edited:
Leider startet die VM nicht einmal sobald ich BIOS: OVMF auswähle, dann kommt nur dieserer Error:
OVMF ist notwendig für PCIe passthrough. Der Fehler hier bedeutet nur, dass die Windows Installation auf der BIOS Variante geschehen ist, und nicht für UEFI geeignet ist - einfachste Lösung, OVMF einschalten, dann Windows neu installieren. Dann sollte es sich in der UEFI Variante installieren.

(Wenn ich die Maschine im SeaBIOS Modus starte steht im Task-Manager Virtueller Computer, also scheint hidden=1 nicht zu funktionieren?)
"hidden=1" bedeutet nur, dass der KVM-eigene Kommunikationsport nicht verfügbar ist. Das ist bei Windows-VMs im Grunde relativ nutzlos, weil Windows sowieso keine Linux-Hypervisor features verwendet.

Tatsächlich verstecken kann man die Tatsache, dass die Maschine eine VM ist sowieso nicht. Es gibt immer Wege das herauszufinden.
 
  • Like
Reactions: HansPeter12
OVMF ist notwendig für PCIe passthrough. Der Fehler hier bedeutet nur, dass die Windows Installation auf der BIOS Variante geschehen ist, und nicht für UEFI geeignet ist - einfachste Lösung, OVMF einschalten, dann Windows neu installieren. Dann sollte es sich in der UEFI Variante installieren.
VM wurde komplett neu auf OVMF installiert.
Leider bekomme ich auch mit OVMF immernoch den Error 43. Hier mal die conf.
1598596720089.png
Soll an die Grafikkarte ein physischer Bildschirm angeschlossen werden?
 
Last edited:
Leider bekomme ich auch mit OVMF immernoch den Error 43. Hier mal die conf.
In der config ist kein hostpci device angegeben?

Soll an die Grafikkarte ein physischer Bildschirm angeschlossen werden?
Sofern nicht nur CUDA Funktionalität benötigt wird, ja, das wäre ja dann der Sinn des passthroughs.

Ach, und weil es mir gerade auffällt (nicht sicher, ob es damit zu tun hat), aber aus dem ersten post: Die line in '/etc/default/grub' lautet video=efifb:off. Das passiert wenn man einfach aus dem Forum copy-pasted, wo Leute kein inline-code tag verwenden und aus dem 'off' dann ein :eek:off wird (smiley mit code :eek:). :)

Vielleicht auch einmal ohne dem pcie_acs_override probieren und die IOMMU Gruppen dann anschauen. Wenn das nicht wirklich und bestätigt notwendig ist, tut das meistens mehr Schaden als Hilfe. 'update-grub' und reboot nicht vergessen, 'cat /proc/cmdline' zum Bestätigen.
 
Hello,

I am having the same issue on my windows 10 vm getting code 43. My underlining hardware is dell r720 with gtx 660ti gpu. im currently running pve 6.2-4 i have few thing different as you can see on the attachment. I have tried everything nothing seems to work.

Thank you,
 

Attachments

  • Screen Shot 2020-08-31 at 3.18.01 PM.png
    Screen Shot 2020-08-31 at 3.18.01 PM.png
    126.5 KB · Views: 15
  • Screen Shot 2020-08-31 at 3.10.34 PM.png
    Screen Shot 2020-08-31 at 3.10.34 PM.png
    13.5 KB · Views: 10
  • Screen Shot 2020-08-31 at 3.04.59 PM.png
    Screen Shot 2020-08-31 at 3.04.59 PM.png
    18.6 KB · Views: 9
  • Screen Shot 2020-08-31 at 3.06.04 PM.png
    Screen Shot 2020-08-31 at 3.06.04 PM.png
    58.9 KB · Views: 11
In der config ist kein hostpci device angegeben?


Sofern nicht nur CUDA Funktionalität benötigt wird, ja, das wäre ja dann der Sinn des passthroughs.

Ach, und weil es mir gerade auffällt (nicht sicher, ob es damit zu tun hat), aber aus dem ersten post: Die line in '/etc/default/grub' lautet video=efifb:off. Das passiert wenn man einfach aus dem Forum copy-pasted, wo Leute kein inline-code tag verwenden und aus dem 'off' dann ein :eek:off wird (smiley mit code :eek:). :)

Vielleicht auch einmal ohne dem pcie_acs_override probieren und die IOMMU Gruppen dann anschauen. Wenn das nicht wirklich und bestätigt notwendig ist, tut das meistens mehr Schaden als Hilfe. 'update-grub' und reboot nicht vergessen, 'cat /proc/cmdline' zum Bestätigen.
Die Grafikkarte ist eingebunden, sorry habe den Screenshot schon davor gemacht.


Habe mal mein Grub umgeändert. Sieht jetzt so aus ->
1598940710643.png
1598940727423.png
Leider aber noch keine Besserung, immer noch Error 43.
 
Hello,

I am having the same issue on my windows 10 vm getting code 43. My underlining hardware is dell r720 with gtx 660ti gpu. im currently running pve 6.2-4 i have few thing different as you can see on the attachment. I have tried everything nothing seems to work.

Thank you,
Please avoid posting english content in the german forum. As for your issue, the dreaded "error 43" is a very generic error code by NVIDIA, just because it's the same does not mean your problem is the same. Please open a seperate thread if you need assistance.

Leider aber noch keine Besserung, immer noch Error 43.
Zeigt 'lspci -nnk' die Karte mit dem 'vfio-pci' kernel Treiber oder mit nvidia/nouveau? Unter Umständen ist es notwendig, dem vfio-pci Treiber manuell zu sagen, an welche PCI Geräte er sich hängen soll. Sprich die vfio.conf Datei erstellen wie hier beschrieben, initramfs neu bauen und rebooten.

Wenn die Karte erfolgreich für PT aktiviert wurde, und sonst keine GPU eingebaut ist, sollte beim booten vom host kein output von Linux erscheinen (BIOS Output ist meistens OK), PVE also nur übers Netzwerk erreichbar sein.
 
Zeigt 'lspci -nnk' die Karte mit dem 'vfio-pci' kernel Treiber oder mit nvidia/nouveau? Unter Umständen ist es notwendig, dem vfio-pci Treiber manuell zu sagen, an welche PCI Geräte er sich hängen soll. Sprich die vfio.conf Datei erstellen wie hier beschrieben, initramfs neu bauen und rebooten.

Wenn die Karte erfolgreich für PT aktiviert wurde, und sonst keine GPU eingebaut ist, sollte beim booten vom host kein output von Linux erscheinen (BIOS Output ist meistens OK), PVE also nur übers Netzwerk erreichbar sein.
'lspci -nnk' zeigt das hier:

00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v3 Processor DRAM Controller [8086:0c08] (rev 06)
Subsystem: ASUSTeK Computer Inc. Xeon E3-1200 v3 Processor DRAM Controller [1043:8534]
Kernel modules: ie31200_edac
00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller [8086:0c01] (rev 06)
Kernel driver in use: pcieport
00:14.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB xHCI Controller [8086:8cb1]
Subsystem: ASUSTeK Computer Inc. 9 Series Chipset Family USB xHCI Controller [1043:8534]
Kernel driver in use: xhci_hcd
Kernel modules: xhci_pci
00:16.0 Communication controller [0780]: Intel Corporation 9 Series Chipset Family ME Interface #1 [8086:8cba]
Subsystem: ASUSTeK Computer Inc. 9 Series Chipset Family ME Interface [1043:8534]
Kernel driver in use: mei_me
Kernel modules: mei_me
00:1a.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB EHCI Controller #2 [8086:8cad]
Subsystem: ASUSTeK Computer Inc. 9 Series Chipset Family USB EHCI Controller [1043:8534]
Kernel driver in use: ehci-pci
Kernel modules: ehci_pci
00:1b.0 Audio device [0403]: Intel Corporation 9 Series Chipset Family HD Audio Controller [8086:8ca0]
Subsystem: ASUSTeK Computer Inc. 9 Series Chipset Family HD Audio Controller [1043:8616]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
00:1c.0 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI Express Root Port 1 [8086:8c90] (rev d0)
Kernel driver in use: pcieport
00:1c.2 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI Express Root Port 3 [8086:8c94] (rev d0)
Kernel driver in use: pcieport
00:1c.3 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev d0)
Kernel driver in use: pcieport
00:1d.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB EHCI Controller #1 [8086:8ca6]
Subsystem: ASUSTeK Computer Inc. 9 Series Chipset Family USB EHCI Controller [1043:8534]
Kernel driver in use: ehci-pci
Kernel modules: ehci_pci
00:1f.0 ISA bridge [0601]: Intel Corporation 9 Series Chipset Family H97 Controller [8086:8cc6]
Subsystem: ASUSTeK Computer Inc. H97 Chipset LPC Controller [1043:8534]
Kernel driver in use: lpc_ich
Kernel modules: lpc_ich
00:1f.2 SATA controller [0106]: Intel Corporation 9 Series Chipset Family SATA Controller [AHCI Mode] [8086:8c82]
Subsystem: ASUSTeK Computer Inc. 9 Series Chipset Family SATA Controller [AHCI Mode] [1043:8534]
Kernel driver in use: ahci
Kernel modules: ahci
00:1f.3 SMBus [0c05]: Intel Corporation 9 Series Chipset Family SMBus Controller [8086:8ca2]
Subsystem: ASUSTeK Computer Inc. 9 Series Chipset Family SMBus Controller [1043:8534]
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP107 [GeForce GTX 1050 Ti] [10de:1c82] (rev a1)
Subsystem: ZOTAC International (MCO) Ltd. GP107 [GeForce GTX 1050 Ti] [19da:2454]
Kernel driver in use: vfio-pci
Kernel modules: nvidiafb, nouveau
01:00.1 Audio device [0403]: NVIDIA Corporation GP107GL High Definition Audio Controller [10de:0fb9] (rev a1)
Subsystem: ZOTAC International (MCO) Ltd. GP107GL High Definition Audio Controller [19da:2454]
Kernel driver in use: vfio-pci

Kernel modules: snd_hda_intel
02:00.0 Non-Volatile memory controller [0108]: Micron/Crucial Technology Device [c0a9:2263] (rev 03)
Subsystem: Micron/Crucial Technology Device [c0a9:2263]
Kernel driver in use: nvme
03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 11)
Subsystem: ASUSTeK Computer Inc. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [1043:859e]
Kernel driver in use: r8169
Kernel modules: r8169
04:00.0 PCI bridge [0604]: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge [1b21:1080] (rev 04

Die vfio.conf habe ich bereits erstellt und die Karte eingetragen:
1598947982470.png



Bisher war es so dass immer der Output vom Host kam, sprich Linux, solange bis ich die VM mit dem Passthrough gestartet habe, dann war der Output nur ein Blackscreen.
 
Last edited:
Hm, und mit nofb video=vesafb:off,vesa:off,efifb:off in der kernel kommandozeile (grub)? Dann sollte kein output mehr erscheinen. Manche GPUs mögen es nämlich nicht, doppelt initialisiert zu werden.

Manchmal korrumpiert dann sogar das BIOS schon die Karte für Passthrough, unter Umständen einmal den Guide zum vBIOS dumpen hier versuchen - dafür wird aber zumindest temporär eine zweite GPU benötigt, oder viel Glück, dass das benötigte BIOS im Internet verfügbar ist.
 
Hm, und mit nofb video=vesafb:off,vesa:off,efifb:off in der kernel kommandozeile (grub)? Dann sollte kein output mehr erscheinen. Manche GPUs mögen es nämlich nicht, doppelt initialisiert zu werden.

Manchmal korrumpiert dann sogar das BIOS schon die Karte für Passthrough, unter Umständen einmal den Guide zum vBIOS dumpen hier versuchen - dafür wird aber zumindest temporär eine zweite GPU benötigt, oder viel Glück, dass das benötigte BIOS im Internet verfügbar ist.
OK, habe es eingetragen:
1598948283337.png
werde es dann heute Abend testen.
 
Hm, und mit nofb video=vesafb:off,vesa:off,efifb:off in der kernel kommandozeile (grub)? Dann sollte kein output mehr erscheinen. Manche GPUs mögen es nämlich nicht, doppelt initialisiert zu werden.

Manchmal korrumpiert dann sogar das BIOS schon die Karte für Passthrough, unter Umständen einmal den Guide zum vBIOS dumpen hier versuchen - dafür wird aber zumindest temporär eine zweite GPU benötigt, oder viel Glück, dass das benötigte BIOS im Internet verfügbar ist.
1599027834814.png
Leider keine besserung, immernoch error Code 43 :(
 
Habe heute eine AMD Karte eingebaut, um Nvidia Probleme auszuschließen aber selbst bei dieser Karte bekomme ich einen 43 Error Code.
1600717836823.png
Kann es sein, dass etwas an meinen Mainboard Einstellungen nicht passt? und wie kann ich das überprüfen?
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!