PCI passthrough to VM cannot work

sili

Renowned Member
Dec 21, 2015
39
2
73
38
hi, I was passthrough intel x552 to pfsense and vm.
But I cannot let ixgbe work

In pfsense, I need every boot to change boot order to local drives
If I used network first, then I cannot see "ix0" in my pfsense...

But I can see ixgbe where I use pciconfig command
Code:
root: pciconfig -lv
none3@pci0:1:0:0:       class=0x020000 card=0x15ad15d9 chip=0x15ad8086 rev=0x00 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Ethernet Connection X552/X557-AT 10GBASE-T'
    class      = network
    subclass   = ethernet

Code:
[2.3-RELEASE]root: dmesg |grep ix
acpi0: Power Button (fixed)
ix0: <Intel(R) PRO/10GbE PCI-Express Network Driver, Version - 3.1.14> mem 0xfc600000-0xfc7fffff,0xfc800000-0xfc803fff irq 17 at device 0.0 on pci1
ix0: Using MSIX interrupts with 3 vectors
ix0: The EEPROM Checksum Is Not Valid
device_attach: ix0 attach returned 5
da0: <QEMU QEMU HARDDISK 2.5+> Fixed Direct Access SPC-3 SCSI device

In ubuntu, I have try to ubuntu 16.04LTS & ubuntu 14.04.3,
I even can see X552 where I use lspci

Code:
root@pbx:~# lspci |grep X552
01:00.0 Ethernet controller: Intel Corporation Ethernet Connection X552/X557-AT 10GBASE-T

Code:
root@dol1pbx:~# lspci -vnnk -s 01:00.0
01:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection X552/X557-AT 10GBASE-T [8086:15ad]
  Subsystem: Super Micro Computer Inc Ethernet Connection X552/X557-AT 10GBASE-T [15d9:15ad]
  Physical Slot: 0
  Flags: fast devsel
  Memory at fc600000 (64-bit, prefetchable) [size=2M]
  Memory at fc800000 (64-bit, prefetchable) [size=16K]
  Expansion ROM at fe800000 [disabled] [size=512K]
  Capabilities: [40] Power Management version 3
  Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
  Capabilities: [70] MSI-X: Enable- Count=64 Masked-
  Capabilities: [a0] Express Endpoint, MSI 00
  Capabilities: [100] Advanced Error Reporting
  Capabilities: [140] Device Serial Number 00-00-c9-ff-ff-00-00-00
  Capabilities: [150] Alternative Routing-ID Interpretation (ARI)
  Capabilities: [160] Single Root I/O Virtualization (SR-IOV)
  Capabilities: [1b0] Access Control Services
  Capabilities: [1c0] Latency Tolerance Reporting
  Kernel modules: ixgbe


and the same problem is I cannot see ixgbe's eth where I use ifconfig -a
Code:
root@pbx:~# ifconfig -a
eth0  Link encap:Ethernet  HWaddr 7e:ba:b6:b5:ec:12
  inet addr:192.168.0.250  Bcast:192.168.0.255  Mask:255.255.255.0
  inet6 addr: fe80::7cba:b6ff:feb5:ec12/64 Scope:Link
  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  RX packets:1775 errors:0 dropped:15 overruns:0 frame:0
  TX packets:341 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1000
  RX bytes:160237 (160.2 KB)  TX bytes:65626 (65.6 KB)

eth1  Link encap:Ethernet  HWaddr 7e:ba:b6:b5:ec:14
  inet addr:192.168.252.250  Bcast:192.168.252.255  Mask:255.255.255.0
  inet6 addr: fe80::7cba:b6ff:feb5:ec14/64 Scope:Link
  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  RX packets:1350 errors:0 dropped:15 overruns:0 frame:0
  TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1000
  RX bytes:126972 (126.9 KB)  TX bytes:648 (648.0 B)

lo  Link encap:Local Loopback
  inet addr:127.0.0.1  Mask:255.0.0.0
  inet6 addr: ::1/128 Scope:Host
  UP LOOPBACK RUNNING  MTU:65536  Metric:1
  RX packets:4640 errors:0 dropped:0 overruns:0 frame:0
  TX packets:4640 errors:0 dropped:0 overruns:0 carrier:0
  collisions:0 txqueuelen:1
  RX bytes:343360 (343.3 KB)  TX bytes:343360 (343.3 KB)

here is my pveversion
Code:
root@pve-dol1:~#  pveversion --verbose
proxmox-ve: 4.1-41 (running kernel: 4.2.8-1-pve)
pve-manager: 4.1-22 (running version: 4.1-22/aca130cf)
pve-kernel-4.2.8-1-pve: 4.2.8-41
pve-kernel-4.2.2-1-pve: 4.2.2-16
lvm2: 2.02.116-pve2
corosync-pve: 2.3.5-2
libqb0: 1.0-1
pve-cluster: 4.0-36
qemu-server: 4.0-64
pve-firmware: 1.1-7
libpve-common-perl: 4.0-54
libpve-access-control: 4.0-13
libpve-storage-perl: 4.0-45
pve-libspice-server1: 0.12.5-2
vncterm: 1.2-1
pve-qemu-kvm: 2.5-9
pve-container: 1.0-52
pve-firewall: 2.0-22
pve-ha-manager: 1.0-25
ksm-control-daemon: 1.2-1
glusterfs-client: 3.5.2-2+deb8u1
lxc-pve: 1.1.5-7
lxcfs: 2.0.0-pve2
cgmanager: 0.39-pve1
criu: 1.6.0-1
zfsutils: 0.6.5-pve7~jessie
openvswitch-switch: 2.3.2-2
 
I've solved this problem.
When I disable onboard LAN 1 option rom on pve host BIOS.
It's getting to work.