Skip to main content
Question

Metis M.2 Proxmox Passthrough

  • April 24, 2026
  • 7 replies
  • 57 views

I'm trying to do a pci passthrough from proxmox to my VM.
I keep getting the error when starting my VM.
 

error writing '1' to '/sys/bus/pci/devices/0000:02:00.0/reset': Inappropriate ioctl for device
failed to reset PCI device '0000:02:00.0', but trying to continue as not all devices need a reset
kvm: ../hw/pci/pci.c:1815: pci_irq_handler: Assertion `0 <= irq_num && irq_num < PCI_NUM_PINS' failed.
TASK ERROR: start failed: QEMU exited with code 1

This is my machine details
 

agent: 1
bios: ovmf
boot: order=scsi0;ide2;net0
cores: 4
cpu: x86-64-v2-AES
efidisk0: local-lvm:vm-103-disk-0,efitype=4m,ms-cert=2023,pre-enrolled-keys=1,size=4M
hostpci0: 0000:02:00.0,pcie=1,rombar=1
ide2: none,media=cdrom
machine: q35
memory: 4096
meta: creation-qemu=10.1.2,ctime=1776892906
name: axelera
net0: virtio=BC:24:11:A4:8C:9B,bridge=vmbr0,firewall=1
numa: 0
ostype: l26
scsi0: local-lvm:vm-103-disk-1,iothread=1,size=32G
scsihw: virtio-scsi-single
smbios1: uuid=49dcbf39-39e5-4a39-a8ad-cc02f5c886bf
sockets: 1
vmgenid: 91f66581-7a4a-46b0-a301-96133f8cea9a

I have blacklisted the device on the host machine but that doesn't make a difference.
There is also a strange issue on my Host, where i need to do a pci rescan after each host reboot
 

echo 1 | tee /sys/bus/pci/rescan

After the rescan i can see the device.
 

02:00.0 Processing accelerators [1200]: Axelera AI Metis AIPU (rev 02) [1f9d:1100]
Subsystem: Axelera AI Metis AIPU (rev 02) [1f9d:1100]
Kernel driver in use: vfio-pci

IOMMU is enabled.
 

root@server1:~# dmesg | grep -iE "iommu"
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-6.17.2-1-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
[ 0.026768] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.17.2-1-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
[ 0.026802] DMAR: IOMMU enabled
[ 0.071802] DMAR-IR: IOAPIC id 2 under DRHD base 0xfed91000 IOMMU 1
[ 0.299486] pci 0000:00:02.0: DMAR: Skip IOMMU disabling for graphics
[ 0.811834] iommu: Default domain type: Passthrough (set via kernel command line)
[ 0.867244] pci 0000:00:02.0: Adding to iommu group 0
[ 0.867274] pci 0000:00:00.0: Adding to iommu group 1
[ 0.867284] pci 0000:00:01.0: Adding to iommu group 2
[ 0.867291] pci 0000:00:04.0: Adding to iommu group 3
[ 0.867299] pci 0000:00:08.0: Adding to iommu group 4
[ 0.867310] pci 0000:00:14.0: Adding to iommu group 5
[ 0.867317] pci 0000:00:14.2: Adding to iommu group 5
[ 0.867327] pci 0000:00:16.0: Adding to iommu group 6
[ 0.867334] pci 0000:00:16.3: Adding to iommu group 6
[ 0.867341] pci 0000:00:17.0: Adding to iommu group 7
[ 0.867395] pci 0000:00:1a.0: Adding to iommu group 8
[ 0.867419] pci 0000:00:1f.0: Adding to iommu group 9
[ 0.867428] pci 0000:00:1f.3: Adding to iommu group 9
[ 0.867435] pci 0000:00:1f.4: Adding to iommu group 9
[ 0.867443] pci 0000:00:1f.5: Adding to iommu group 9
[ 0.867455] pci 0000:00:1f.6: Adding to iommu group 9
[ 0.867464] pci 0000:01:00.0: Adding to iommu group 10
[ 58.060969] pci 0000:02:00.0: Adding to iommu group 11

Please help

Thanks

7 replies

emustafa
Axelera Team
  • Axelera Team
  • April 29, 2026

Hi ​@naeemza 

I'm also experimenting with the PCIe passthrough for Proxmox and have stumbled on some issues myself. Keep in mind that the virtualization support is still in beta.

Some questions: Could you provide your Proxmox VE version and also the kernel version. You can get those with 

pveversion -v

Also can you check if the metis card is in it's own IOMMU group. You can check with:
 

pvesh get /nodes/{nodename}/hardware/pci --pci-class-blacklist ""

replacing {nodename} with the name of your node.

Looking forward to hear back from you!


  • Author
  • Cadet
  • April 29, 2026

Hi, I reinstalled to ubuntu and busy trying the docker route.
I was running pve 9 and the card was in its own IOMMU group.

I will tackle this again when I have some time.


Spanner
Axelera Team
Forum|alt.badge.img+3
  • Axelera Team
  • April 30, 2026

Let us know how it goes ​@naeemza !


  • Author
  • Cadet
  • April 30, 2026

The docker setup was quite simple and the guide helped.
It works nicely on there, no need to install all the libraries on the host os only the driver.


Spanner
Axelera Team
Forum|alt.badge.img+3
  • Axelera Team
  • May 1, 2026

Great news, and thanks for letting us know ​@naeemza ! What’s the project you’re working on, by the way?


  • Author
  • Cadet
  • May 1, 2026

It’s mainly camera inference for LPR and possibly some other use cases at filling stations.


Spanner
Axelera Team
Forum|alt.badge.img+3
  • Axelera Team
  • May 5, 2026

Filling stations! That’s a great use case for edge AI, in so many respects. Keep me posted on what you’re building! Sounds very cool, and I’ve not heard about anyone else looking into filling stations as a use case.