I'm trying to pass both the onboard NIC and the onboard SATA controller to my VM but they don't work consistently. In the configure file I have:
machine: q35
hostpci0: 00:1f.2,pcie=1,driver=vfio
hostpci1: 03:00.0,pcie=1,driver=vfio
where 00:1f.2 is the onboard sata controller and 03:00.0 is one of the two onboard NICs. I'm trying to setup a file server and the guest OS is Xpenology. I'm using PVE 4.0beta2 (3.4 has the same issue).
The problem is, the first time I boot the node (proxmox server) and start the VM, the NIC is not working properly. Using the console I can see the drives are mounted correctly though (so sata controller is working) but I cannot get a reliable connection (ping works very inconsistently). If I reboot the VM, in the following sessions there is no problem with the NIC. However I cannot find any drives connected to the sata controller. dmesg inside the VM shows:
[ 3.946179] ata11: SATA link down (SStatus 0 SControl 300)
Running "qm monitor" and "info pci" shows both hostpci0 and hostpci1 are in the list.
It makes me think that there seems to be some conflicts between the two devices. I don't understand why the sata controller only works first the time I boot the proxmox server. When I power off the VM, does the host get the devices back? I don't see the drives with fdisk -l in the host though. I tried the wiki (pve.proxmox.com/wiki/Pci_passthrough) by adding the devices to initramfs-tools but they don't seem to help. I also checked the KVM passthrough page (linux-kvm.org/page/How_to_assign_devices_with_VT-d_in_KVM) where it mentions to unbind device from host kernel driver, but it didn't help either (by the way why proxmox wiki doesn't have the info about unbind the device from the kernel? Is it not needed?)
Could someone shed some light on this? I've been struggling for several days. I hope it's not some hardware problem which we cannot fix easily (for the record I have i5-4690s and BioSTAR B85N mobo, which has two onboard realtek 8111g NICs).
Any suggestion is greatly appreciated. Thank you for your help in advance.
machine: q35
hostpci0: 00:1f.2,pcie=1,driver=vfio
hostpci1: 03:00.0,pcie=1,driver=vfio
where 00:1f.2 is the onboard sata controller and 03:00.0 is one of the two onboard NICs. I'm trying to setup a file server and the guest OS is Xpenology. I'm using PVE 4.0beta2 (3.4 has the same issue).
The problem is, the first time I boot the node (proxmox server) and start the VM, the NIC is not working properly. Using the console I can see the drives are mounted correctly though (so sata controller is working) but I cannot get a reliable connection (ping works very inconsistently). If I reboot the VM, in the following sessions there is no problem with the NIC. However I cannot find any drives connected to the sata controller. dmesg inside the VM shows:
[ 3.946179] ata11: SATA link down (SStatus 0 SControl 300)
Running "qm monitor" and "info pci" shows both hostpci0 and hostpci1 are in the list.
It makes me think that there seems to be some conflicts between the two devices. I don't understand why the sata controller only works first the time I boot the proxmox server. When I power off the VM, does the host get the devices back? I don't see the drives with fdisk -l in the host though. I tried the wiki (pve.proxmox.com/wiki/Pci_passthrough) by adding the devices to initramfs-tools but they don't seem to help. I also checked the KVM passthrough page (linux-kvm.org/page/How_to_assign_devices_with_VT-d_in_KVM) where it mentions to unbind device from host kernel driver, but it didn't help either (by the way why proxmox wiki doesn't have the info about unbind the device from the kernel? Is it not needed?)
Could someone shed some light on this? I've been struggling for several days. I hope it's not some hardware problem which we cannot fix easily (for the record I have i5-4690s and BioSTAR B85N mobo, which has two onboard realtek 8111g NICs).
Any suggestion is greatly appreciated. Thank you for your help in advance.