From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 577889A8F for ; Wed, 20 May 2015 11:19:35 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP; 20 May 2015 02:19:23 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.13,464,1427785200"; d="scan'208";a="495965940" Received: from kmsmsx151.gar.corp.intel.com ([172.21.73.86]) by FMSMGA003.fm.intel.com with ESMTP; 20 May 2015 02:19:21 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by KMSMSX151.gar.corp.intel.com (172.21.73.86) with Microsoft SMTP Server (TLS) id 14.3.224.2; Wed, 20 May 2015 17:19:20 +0800 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.120]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.94]) with mapi id 14.03.0224.002; Wed, 20 May 2015 17:19:18 +0800 From: "Qiu, Michael" To: "Assaad, Sami (Sami)" , "Richardson, Bruce" Thread-Topic: [dpdk-dev] How do you setup a VM in Promiscuous Mode using PCI Pass-Through (SR-IOV)? Thread-Index: AQHQj0W3XBeRDnTDh0KVnJLaxShRaw== Date: Wed, 20 May 2015 09:19:19 +0000 Message-ID: <533710CFB86FA344BFBF2D6802E602860467F9C0@SHSMSX101.ccr.corp.intel.com> References: <9478F0FB69DAA249AF0A9BDA1E6ED95218817AB9@US70TWXCHMBA07.zam.alcatel-lucent.com> <20150514164719.7b68b0ef@urahara> <20150515092719.GA1520@bricha3-MOBL3> <9478F0FB69DAA249AF0A9BDA1E6ED95218818129@US70TWXCHMBA07.zam.alcatel-lucent.com> <20150515130804.GB5884@bricha3-MOBL3> <9478F0FB69DAA249AF0A9BDA1E6ED9521881848E@US70TWXCHMBA07.zam.alcatel-lucent.com> <533710CFB86FA344BFBF2D6802E602860467EA7E@SHSMSX101.ccr.corp.intel.com> <9478F0FB69DAA249AF0A9BDA1E6ED9521881BDE6@US70TWXCHMBA07.zam.alcatel-lucent.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] How do you setup a VM in Promiscuous Mode using PCI Pass-Through (SR-IOV)? X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 May 2015 09:19:37 -0000 =0A= =0A= 25 What is RMRR?=0A= 26 -------------=0A= 27 =0A= 28 There are some devices the BIOS controls, for e.g= USB devices to perform=0A= 29 PS2 emulation. The regions of memory used for the= se devices are marked=0A= 30 reserved in the e820 map. When we turn on DMA tra= nslation, DMA to those=0A= 31 regions will fail. Hence BIOS uses RMRR to specif= y these regions along with=0A= 32 devices that need to access these regions. OS is = expected to setup=0A= 33 unity mappings for these regions for these device= s to access these regions.=0A= =0A= =0A= So what type of your NIC? Is on-board device or a plug in device?=0A= =0A= Thanks,=0A= Michael=0A= =0A= On 5/20/2015 3:24 AM, Assaad, Sami (Sami) wrote:=0A= > Hello Michael,=0A= >=0A= > I've updated the kernel and QEMU. Here are the packages I'm using:=0A= >=0A= > --> CentOS 7 - 3.10.0-229.4.2.el7.x86_64=0A= > - qemu-kvm-1.5.3-86.el7_1.2.x86_64=0A= > - libvirt-1.2.8-16.el7_1.3.x86_64=0A= > - virt-manager-1.1.0-12.el7.noarch=0A= > - virt-what-1.13-5.el7.x86_64=0A= > - libvirt-glib-0.1.7-3.el7.x86_64=0A= >=0A= > I've modified the virtual machine XML file to include the following:=0A= >=0A= > =0A= > =0A= > =0A= >
=0A= > =0A= > =0A= > =0A= > =0A= > =0A= >
=0A= > =0A= > =0A= >=0A= >=0A= > The syslog error I'm obtaining relating to the iommu is the following:=0A= > #dmesg | grep -e DMAR -e IOMMU=0A= >=0A= > [ 3362.370564] vfio-pci 0000:04:00.0: Device is ineligible for IOMMU doma= in attach due to platform RMRR requirement. Contact your platform vendor.= =0A= >=0A= >=0A= > From the /var/log/messages file, the complete VM log is the following:=0A= >=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): carri= er is OFF=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): new T= un device (driver: 'unknown' ifindex: 30)=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): expor= ted as /org/freedesktop/NetworkManager/Devices/29=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (virbr0): brid= ge port vnet0 was attached=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): ensla= ved to virbr0=0A= > May 19 15:10:12 ni-nfvhost01 kernel: device vnet0 entered promiscuous mod= e=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): link = connected=0A= > May 19 15:10:12 ni-nfvhost01 kernel: virbr0: port 2(vnet0) entered listen= ing state=0A= > May 19 15:10:12 ni-nfvhost01 kernel: virbr0: port 2(vnet0) entered listen= ing state=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): devic= e state change: unmanaged -> unavailable (reason 'connection-assumed') [10 = 20 41]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): devic= e state change: unavailable -> disconnected (reason 'connection-assumed') [= 20 30 41]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: starting connection 'vnet0'=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 1 of 5 (Device Prepare) scheduled...=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 1 of 5 (Device Prepare) started...=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): devic= e state change: disconnected -> prepare (reason 'none') [30 40 0]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 2 of 5 (Device Configure) scheduled...=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 1 of 5 (Device Prepare) complete.=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 2 of 5 (Device Configure) starting...=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): devic= e state change: prepare -> config (reason 'none') [40 50 0]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 2 of 5 (Device Configure) successful.=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 3 of 5 (IP Configure Start) scheduled.=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 2 of 5 (Device Configure) complete.=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 3 of 5 (IP Configure Start) started...=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): devic= e state change: config -> ip-config (reason 'none') [50 70 0]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: Stage 3 of 5 (IP Configure Start) complete.=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): devic= e state change: ip-config -> secondaries (reason 'none') [70 90 0]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): devic= e state change: secondaries -> activated (reason 'none') [90 100 0]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): Activ= ation: successful, device activated.=0A= > May 19 15:10:12 ni-nfvhost01 dbus-daemon: dbus[1295]: [system] Activating= via systemd: service name=3D'org.freedesktop.nm_dispatcher' unit=3D'dbus-o= rg.freedesktop.nm-dispatcher.service'=0A= > May 19 15:10:12 ni-nfvhost01 dbus[1295]: [system] Activating via systemd:= service name=3D'org.freedesktop.nm_dispatcher' unit=3D'dbus-org.freedeskto= p.nm-dispatcher.service'=0A= > May 19 15:10:12 ni-nfvhost01 systemd: Starting Network Manager Script Dis= patcher Service...=0A= > May 19 15:10:12 ni-nfvhost01 systemd: Starting Virtual Machine qemu-vNIDS= -VM1.=0A= > May 19 15:10:12 ni-nfvhost01 systemd-machined: New machine qemu-vNIDS-VM1= .=0A= > May 19 15:10:12 ni-nfvhost01 systemd: Started Virtual Machine qemu-vNIDS-= VM1.=0A= > May 19 15:10:12 ni-nfvhost01 dbus-daemon: dbus[1295]: [system] Successful= ly activated service 'org.freedesktop.nm_dispatcher'=0A= > May 19 15:10:12 ni-nfvhost01 dbus[1295]: [system] Successfully activated = service 'org.freedesktop.nm_dispatcher'=0A= > May 19 15:10:12 ni-nfvhost01 systemd: Started Network Manager Script Disp= atcher Service.=0A= > May 19 15:10:12 ni-nfvhost01 nm-dispatcher: Dispatching action 'up' for v= net0=0A= > May 19 15:10:12 ni-nfvhost01 kvm: 1 guest now active=0A= > May 19 15:10:12 ni-nfvhost01 systemd: Unit iscsi.service cannot be reload= ed because it is inactive.=0A= > May 19 15:10:12 ni-nfvhost01 kernel: vfio-pci 0000:04:00.0: Device is ine= ligible for IOMMU domain attach due to platform RMRR requirement. Contact = your platform vendor.=0A= > May 19 15:10:12 ni-nfvhost01 kernel: virbr0: port 2(vnet0) entered disabl= ed state=0A= > May 19 15:10:12 ni-nfvhost01 kernel: device vnet0 left promiscuous mode= =0A= > May 19 15:10:12 ni-nfvhost01 kernel: virbr0: port 2(vnet0) entered disabl= ed state=0A= > May 19 15:10:12 ni-nfvhost01 avahi-daemon[1280]: Withdrawing workstation = service for vnet0.=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): devic= e state change: activated -> unmanaged (reason 'removed') [100 10 36]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (vnet0): deact= ivating device (reason 'removed') [36]=0A= > May 19 15:10:12 ni-nfvhost01 NetworkManager[1371]: (virbr0): fail= ed to detach bridge port vnet0=0A= > May 19 15:10:12 ni-nfvhost01 nm-dispatcher: Dispatching action 'down' for= vnet0=0A= > May 19 15:10:12 ni-nfvhost01 journal: Unable to read from monitor: Connec= tion reset by peer=0A= > May 19 15:10:12 ni-nfvhost01 journal: internal error: early end of file f= rom monitor: possible problem:=0A= > 2015-05-19T19:10:12.674077Z qemu-kvm: -device vfio-pci,host=3D04:00.0,id= =3Dhostdev0,bus=3Dpci.0,addr=3D0x9: vfio: failed to set iommu for container= : Operation not permitted=0A= > 2015-05-19T19:10:12.674118Z qemu-kvm: -device vfio-pci,host=3D04:00.0,id= =3Dhostdev0,bus=3Dpci.0,addr=3D0x9: vfio: failed to setup container for gro= up 19=0A= > 2015-05-19T19:10:12.674128Z qemu-kvm: -device vfio-pci,host=3D04:00.0,id= =3Dhostdev0,bus=3Dpci.0,addr=3D0x9: vfio: failed to get group 19=0A= > 2015-05-19T19:10:12.674141Z qemu-kvm: -device vfio-pci,host=3D04:00.0,id= =3Dhostdev0,bus=3Dpci.0,addr=3D0x9: Device initialization failed.=0A= > 2015-05-19T19:10:12.674155Z qemu-kvm: -device vfio-pci,host=3D04:00.0,id= =3Dhostdev0,bus=3Dpci.0,addr=3D0x9: Device 'vfio-pci' could not be initiali= zed=0A= >=0A= > May 19 15:10:12 ni-nfvhost01 kvm: 0 guests now active=0A= > May 19 15:10:12 ni-nfvhost01 systemd-machined: Machine qemu-vNIDS-VM1 ter= minated.=0A= > May 19 15:11:01 ni-nfvhost01 systemd: Created slice user-0.slice.=0A= > May 19 15:11:01 ni-nfvhost01 systemd: Starting Session 329 of user root.= =0A= >=0A= >=0A= > Overall Hypothesis: The issue seems to be related to the Ethernet Control= ler's interfaces which I'm trying to bring into the VM. My Ethernet Control= ler is : Intel 10G x540-AT2 (rev 01).=0A= > The problem is associated to RMRR. =0A= > Can this issue be attributed to my BIOS? My Bios is t= he following: ProLiant System BIOS P89 V1.21 11/03/2014.=0A= >=0A= > Thanks in advance.=0A= >=0A= > Best Regards,=0A= > Sami.=0A= >=0A= > -----Original Message-----=0A= > From: Qiu, Michael [mailto:michael.qiu@intel.com] =0A= > Sent: Monday, May 18, 2015 6:01 AM=0A= > To: Assaad, Sami (Sami); Richardson, Bruce=0A= > Cc: dev@dpdk.org=0A= > Subject: Re: [dpdk-dev] How do you setup a VM in Promiscuous Mode using P= CI Pass-Through (SR-IOV)?=0A= >=0A= > Hi, Sami=0A= >=0A= > Could you mind to supply the syslog? Especially iommu related parts.=0A= >=0A= > Also you could update the qemu or kernel to see if this issue still exist= s.=0A= >=0A= >=0A= > Thanks,=0A= > Michael=0A= >=0A= > On 5/16/2015 3:31 AM, Assaad, Sami (Sami) wrote:=0A= >> On Fri, May 15, 2015 at 12:54:19PM +0000, Assaad, Sami (Sami) wrote:=0A= >>> Thanks Bruce for your reply.=0A= >>>=0A= >>> Yes, your idea of bringing the PF into the VM looks like an option. How= ever, how do you configure the physical interfaces within the VM supporting= SRIOV?=0A= >>> I always believed that the VM needed to be associated with a virtual/em= ulated interface card. With your suggestion, I would actually configure the= physical interface card/non-emulated within the VM.=0A= >>>=0A= >>> If you could provide me some example configuration commands, it would b= e really appreciated. =0A= >>>=0A= >> You'd pass in the PF in the same way as the VF, just skip all the steps = creating the VF on the host. To the system and hypervisor, both are just PC= I devices!=0A= >>=0A= >> As for configuration, the setup and configuration of the PF in the guest= is exactly the same as on the host - it's the same hardware with the same = PCI bars.=0A= >> It's the IOMMU on your platform that takes care of memory isolation and = address translation and that should work with either PF or VF.=0A= >>=0A= >> Regards,=0A= >> /Bruce=0A= >>=0A= >>> Thanks in advance.=0A= >>>=0A= >>> Best Regards,=0A= >>> Sami.=0A= >>>=0A= >>> -----Original Message-----=0A= >>> From: Bruce Richardson [mailto:bruce.richardson@intel.com]=0A= >>> Sent: Friday, May 15, 2015 5:27 AM=0A= >>> To: Stephen Hemminger=0A= >>> Cc: Assaad, Sami (Sami); dev@dpdk.org=0A= >>> Subject: Re: [dpdk-dev] How do you setup a VM in Promiscuous Mode using= PCI Pass-Through (SR-IOV)?=0A= >>>=0A= >>> On Thu, May 14, 2015 at 04:47:19PM -0700, Stephen Hemminger wrote:=0A= >>>> On Thu, 14 May 2015 21:38:24 +0000=0A= >>>> "Assaad, Sami (Sami)" wrote:=0A= >>>>=0A= >>>>> Hello,=0A= >>>>>=0A= >>>>> My Hardware consists of the following:=0A= >>>>> - DL380 Gen 9 Server supporting two Haswell Processors (Xeon CPU E5= -2680 v3 @ 2.50GHz)=0A= >>>>> - An x540 Ethernet Controller Card supporting 2x10G ports.=0A= >>>>>=0A= >>>>> Software:=0A= >>>>> - CentOS 7 (3.10.0-229.1.2.el7.x86_64)=0A= >>>>> - DPDK 1.8=0A= >>>>>=0A= >>>>> I want all the network traffic received on the two 10G ports to be tr= ansmitted to my VM. The issue is that the Virtual Function / Physical Funct= ions have setup the internal virtual switch to only route Ethernet packets = with destination MAC address matching the VM virtual interface MAC. How can= I configure my virtual environment to provide all network traffic to the V= M...i.e. set the virtual functions for both PCI devices in Promiscuous mode= ?=0A= >>>>>=0A= >>>>> [ If a l2fwd-vf example exists, this would actually solve this =0A= >>>>> problem ... Is there a DPDK l2fwd-vf example available? ]=0A= >>>>>=0A= >>>>>=0A= >>>>> Thanks in advance.=0A= >>>>>=0A= >>>>> Best Regards,=0A= >>>>> Sami Assaad.=0A= >>>> This is a host side (not DPDK) issue.=0A= >>>>=0A= >>>> Intel PF driver will not allow guest (VF) to go into promiscious =0A= >>>> mode since it would allow traffic stealing which is a security violati= on.=0A= >>> Could you maybe try passing the PF directly into the VM, rather than a = VF based off it? Since you seem to want all traffic to go to the one VM, th= ere seems little point in creating a VF on the device, and should let the V= M control the whole NIC directly.=0A= >>>=0A= >>> Regards,=0A= >>> /Bruce=0A= >> Hi Bruce,=0A= >>=0A= >> I was provided two options:=0A= >> 1. Pass the PF directly into the VM=0A= >> 2. Use ixgbe VF mirroring=0A= >>=0A= >> I decided to first try your proposal of passing the PF directly into the= VM. However, I ran into some issues. =0A= >> But prior to providing the problem details, the following is my server = environment:=0A= >> I'm using CentOS 7 KVM/QEMU=0A= >> [root@ni-nfvhost01 qemu]# uname -a=0A= >> Linux ni-nfvhost01 3.10.0-229.1.2.el7.x86_64 #1 SMP Fri Mar 27 =0A= >> 03:04:26 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux=0A= >>=0A= >> [root@ni-nfvhost01 qemu]# lspci -n -s 04:00.0=0A= >> 04:00.0 0200: 8086:1528 (rev 01)=0A= >>=0A= >> [root@ni-nfvhost01 qemu]# lspci | grep -i eth=0A= >> 02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5719 =0A= >> Gigabit Ethernet PCIe (rev 01)=0A= >> 02:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5719 =0A= >> Gigabit Ethernet PCIe (rev 01)=0A= >> 02:00.2 Ethernet controller: Broadcom Corporation NetXtreme BCM5719 =0A= >> Gigabit Ethernet PCIe (rev 01)=0A= >> 02:00.3 Ethernet controller: Broadcom Corporation NetXtreme BCM5719 =0A= >> Gigabit Ethernet PCIe (rev 01)=0A= >> 04:00.0 Ethernet controller: Intel Corporation Ethernet Controller =0A= >> 10-Gigabit X540-AT2 (rev 01)=0A= >> 04:00.1 Ethernet controller: Intel Corporation Ethernet Controller =0A= >> 10-Gigabit X540-AT2 (rev 01)=0A= >>=0A= >> - The following is my grub execution:=0A= >> [root@ni-nfvhost01 qemu]# cat /proc/cmdline=0A= >> BOOT_IMAGE=3D/vmlinuz-3.10.0-229.1.2.el7.x86_64 =0A= >> root=3D/dev/mapper/centos-root ro rd.lvm.lv=3Dcentos/swap =0A= >> vconsole.font=3Dlatarcyrheb-sun17 rd.lvm.lv=3Dcentos/root crashkernel=3D= auto =0A= >> vconsole.keymap=3Dus rhgb quiet iommu=3Dpt intel_iommu=3Don hugepages=3D= 8192=0A= >>=0A= >>=0A= >> This is the error I'm obtaining when the VM has one of the PCI devices a= ssociated to the Ethernet Controller card:=0A= >> [root@ni-nfvhost01 qemu]# qemu-system-x86_64 -m 2048 -vga std -vnc :0 = =0A= >> -net none -enable-kvm -device vfio-pci,host=3D04:00.0,id=3Dnet0=0A= >> qemu-system-x86_64: -device vfio-pci,host=3D04:00.0,id=3Dnet0: vfio: =0A= >> failed to set iommu for container: Operation not permitted=0A= >> qemu-system-x86_64: -device vfio-pci,host=3D04:00.0,id=3Dnet0: vfio: =0A= >> failed to setup container for group 19=0A= >> qemu-system-x86_64: -device vfio-pci,host=3D04:00.0,id=3Dnet0: vfio: =0A= >> failed to get group 19=0A= >> qemu-system-x86_64: -device vfio-pci,host=3D04:00.0,id=3Dnet0: Device in= itialization failed.=0A= >> qemu-system-x86_64: -device vfio-pci,host=3D04:00.0,id=3Dnet0: Device = =0A= >> 'vfio-pci' could not be initialized=0A= >>=0A= >> Hence, I tried the following, but again with no success :-( Decided to = =0A= >> bind the PCI device associated to the Ethernet Controller to vfio (To = =0A= >> enable the VM PCI device access and have the IOMMU operate properly) Her= e are the commands I used to configure the PCI pass-through for the Etherne= t device:=0A= >>=0A= >> # modprobe vfio-pci=0A= >>=0A= >> 1) Device I want to assign as passthrough:=0A= >> 04:00.0=0A= >>=0A= >> 2) Find the vfio group of this device=0A= >>=0A= >> # readlink /sys/bus/pci/devices/0000:04:00.0/iommu_group=0A= >> ../../../../kernel/iommu_groups/19=0A= >> =0A= >> ( IOMMU Group =3D 19 )=0A= >>=0A= >> 3) Check the devices in the group:=0A= >> # ls /sys/bus/pci/devices/0000:04:00.0/iommu_group/devices/=0A= >> 0000:04:00.0=0A= >> =0A= >> (so this group has only 1 device)=0A= >> =0A= >> 4) Unbind from device driver=0A= >> # echo 0000:04:00.0 >/sys/bus/pci/devices/0000:04:00.0/driver/unbind=0A= >> =0A= >> 5) Find vendor & device ID=0A= >> $ lspci -n -s 04:00.0=0A= >>> 04:00.0 0200: 8086:1528 (rev 01)=0A= >> =0A= >> 6) Bind to vfio-pci=0A= >> $ echo 8086 1528 > /sys/bus/pci/drivers/vfio-pci/new_id=0A= >> =0A= >> (this results in a new device node "/dev/vfio/19", which is what qemu = =0A= >> will use to setup the device for passthrough)=0A= >> =0A= >> 7) chown the device node so it is accessible by qemu user:=0A= >> # chown qemu /dev/vfio/19; chgrp qemu /dev/vfio/19=0A= >>=0A= >> Now, on the VM side, using virt-manager, I removed the initial PCI devic= e and re-added it.=0A= >> After re-booting the VM, I obtained the same issue.=0A= >>=0A= >> What am I doing wrong?=0A= >>=0A= >> Thanks a million!=0A= >>=0A= >> Best Regards,=0A= >> Sami.=0A= >>=0A= >>=0A= >=0A= =0A=