[SOLVED] SATA controller passthrough crashes VM

trup3s

New Member
Oct 17, 2020
2
0
1
Germany
Hi,

first of all I'm a newbie to proxmox. This is the first machine I setup running proxmox so please be patient with me :)

I'm currently trying to set up a TrueNAS VM. The TrueNAS VM on itself is working just fine until I try to pass through the SATA controller with my 4 drives. When running the system with the PCI pass through the vm exits with ERROR: start failed: QEMU exited with code 1

The System:

CPU: i3-9100
RAM: 16 GB DDR4 ECC
MB: Supermicro X11SCL-IF
HDD: 4x WD Red 4TB
SSD: Crucial P1 500GB (PCI NVMe Boot/VM drive) (ZFS)

Proxmox VE 6.2~4

I attached the syslog that is generated when the VM gets started.

lspci:

Code:
00:00.0 Host bridge: Intel Corporation 8th Gen Core 4-core Desktop Processor Host Bridge/DRAM Registers [Coffee Lake S] (rev 08)
00:08.0 System peripheral: Intel Corporation Skylake Gaussian Mixture Model
00:12.0 Signal processing controller: Intel Corporation Cannon Lake PCH Thermal Controller (rev 10)
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
00:15.0 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller (rev 10)
00:15.1 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller (rev 10)
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
00:16.4 Communication controller: Intel Corporation Device a364 (rev 10)
00:17.0 SATA controller: Intel Corporation Cannon Lake PCH SATA AHCI Controller (rev 10)
00:1b.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1b.6 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1c.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1c.1 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1e.0 Communication controller: Intel Corporation Device a328 (rev 10)
00:1f.0 ISA bridge: Intel Corporation Device a30a (rev 10)
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
00:1f.5 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
01:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
02:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
04:00.0 PCI bridge: ASPEED Technology, Inc. AST1150 PCI-to-PCI Bridge (rev 04)
05:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 41)
06:00.0 Non-Volatile memory controller: Micron/Crucial Technology Device 5403 (rev 03)

I want to pass through the 00:17.0 SATA Controller.

VM conf:

Code:
balloon: 0
bootdisk: scsi0
cores: 4
hostpci0: 00:17.0
ide2: cdrom,media=cdrom
memory: 15360
name: TrueNAS
net0: virtio=96:6D:D9:43:7D:3F,bridge=vmbr0,firewall=1
numa: 0
onboot: 1
ostype: other
scsi0: Ubuntu:vm-101-disk-0,size=32G
scsihw: virtio-scsi-pci
smbios1: uuid=3cdb2d30-0782-4715-b117-97cd128f43a0
sockets: 1
vmgenid: 5bb520d1-dc27-4a31-923b-fff6510f7188


It would be really great if someone could help me get this to run!
 

Attachments

Wild guess because of Out of memory: Killed process 20311 (kvm): because you are passing though a PCI(e) device, all memory of the VM must be allocated (and locked) and you are running out of memory.
PS: Does the VM start when you reduce the amount of memory for that VM? Maybe you could try 2GB instead of 15, just to see if it works?
 
Last edited:
  • Like
Reactions: trup3s
Wow! Okay never thought this could help. I was actually thinking about buying another 16gb. Not that I'm gonna do that anyway but still I would have never thought of that.

I reduced the memory to 4gb (2gb were a bit too little) and everything worked!

@avw thank you for your fast reply!
 
Last edited: