* [dpdk-users] DPDK 17.05 does not find X510 card
@ 2018-06-18 8:55 Martin Drašar
2018-06-18 8:56 ` [dpdk-users] DPDK 17.05 does not find X710 card Martin Drašar
2018-06-18 9:54 ` [dpdk-users] DPDK 17.05 does not find X510 card Rosen, Rami
0 siblings, 2 replies; 19+ messages in thread
From: Martin Drašar @ 2018-06-18 8:55 UTC (permalink / raw)
To: users
Hello,
I have a CentOS 7 system with two 2-port X710 cards:
> [root@dhcp13-55 pain]# lspci -nn | grep X710
> 04:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01)
> 04:00.1 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01)
> 05:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01)
> 05:00.1 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01)
> [root@dhcp13-55 pain]# lib/dpdk/dpdk-17.05.1/usertools/dpdk-devbind.py --status
>
> Network devices using DPDK-compatible driver
> ============================================
> 0000:04:00.0 'Ethernet Controller X710 for 10GbE SFP+ 1572' drv=igb_uio unused=
> 0000:04:00.1 'Ethernet Controller X710 for 10GbE SFP+ 1572' drv=igb_uio unused=
> 0000:05:00.0 'Ethernet Controller X710 for 10GbE SFP+ 1572' drv=igb_uio unused=
> 0000:05:00.1 'Ethernet Controller X710 for 10GbE SFP+ 1572' drv=igb_uio unused=
According to tth 17.05 release notes, the cards should work. However,
when I run the dpdk_init(), cards are not identified, and
rte_eth_dev_count() returns 0.
Do you have any idea, what may be the cause or how should I proceed to
debug it?
Thank you,
Martin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X710 card 2018-06-18 8:55 [dpdk-users] DPDK 17.05 does not find X510 card Martin Drašar @ 2018-06-18 8:56 ` Martin Drašar 2018-06-18 9:54 ` [dpdk-users] DPDK 17.05 does not find X510 card Rosen, Rami 1 sibling, 0 replies; 19+ messages in thread From: Martin Drašar @ 2018-06-18 8:56 UTC (permalink / raw) To: users Sorry, there was a typo in the subject. X710, not X510. ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-18 8:55 [dpdk-users] DPDK 17.05 does not find X510 card Martin Drašar 2018-06-18 8:56 ` [dpdk-users] DPDK 17.05 does not find X710 card Martin Drašar @ 2018-06-18 9:54 ` Rosen, Rami 2018-06-18 12:41 ` Martin Drašar 1 sibling, 1 reply; 19+ messages in thread From: Rosen, Rami @ 2018-06-18 9:54 UTC (permalink / raw) To: Martin Drašar, users Hi Martin, > dpdk_init() I assume you run your own application. Can you post the log you get when running testpmd with --log-level=8 and -w I40E0_PCI_BUS_ID ....? Also can you post "lspci -n"? Regards, Rami Rosen -----Original Message----- From: users [mailto:users-bounces@dpdk.org] On Behalf Of Martin Drašar Sent: Monday, June 18, 2018 11:56 To: users@dpdk.org Subject: [dpdk-users] DPDK 17.05 does not find X510 card Hello, I have a CentOS 7 system with two 2-port X710 cards: > [root@dhcp13-55 pain]# lspci -nn | grep X710 > 04:00.0 Ethernet controller [0200]: Intel Corporation Ethernet > Controller X710 for 10GbE SFP+ [8086:1572] (rev 01) > 04:00.1 Ethernet controller [0200]: Intel Corporation Ethernet > Controller X710 for 10GbE SFP+ [8086:1572] (rev 01) > 05:00.0 Ethernet controller [0200]: Intel Corporation Ethernet > Controller X710 for 10GbE SFP+ [8086:1572] (rev 01) > 05:00.1 Ethernet controller [0200]: Intel Corporation Ethernet > Controller X710 for 10GbE SFP+ [8086:1572] (rev 01) > [root@dhcp13-55 pain]# lib/dpdk/dpdk-17.05.1/usertools/dpdk-devbind.py > --status > > Network devices using DPDK-compatible driver > ============================================ > 0000:04:00.0 'Ethernet Controller X710 for 10GbE SFP+ 1572' > drv=igb_uio unused= > 0000:04:00.1 'Ethernet Controller X710 for 10GbE SFP+ 1572' > drv=igb_uio unused= > 0000:05:00.0 'Ethernet Controller X710 for 10GbE SFP+ 1572' > drv=igb_uio unused= > 0000:05:00.1 'Ethernet Controller X710 for 10GbE SFP+ 1572' > drv=igb_uio unused= According to tth 17.05 release notes, the cards should work. However, when I run the dpdk_init(), cards are not identified, and rte_eth_dev_count() returns 0. Do you have any idea, what may be the cause or how should I proceed to debug it? Thank you, Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-18 9:54 ` [dpdk-users] DPDK 17.05 does not find X510 card Rosen, Rami @ 2018-06-18 12:41 ` Martin Drašar 2018-06-18 13:09 ` Rosen, Rami 0 siblings, 1 reply; 19+ messages in thread From: Martin Drašar @ 2018-06-18 12:41 UTC (permalink / raw) To: Rosen, Rami, users Dne 18.6.2018 v 11:54 Rosen, Rami napsal(a): > Hi Martin, >> dpdk_init() > > I assume you run your own application. > Can you post the log you get when running testpmd with --log-level=8 and -w I40E0_PCI_BUS_ID ....? > > Also can you post "lspci -n"? > Regards, > Rami Rosen Hello, thank you for getting back to me so quick. I did some debugging and it turned out that i40e drivers were not linked when building the dpdk. I fixed this, but I have encountered another problem... Although the cards are discovered, I get this error: > EAL: pci_map_resource(): cannot mmap(102, 0x7fffc0000000, 0x1000000, 0x0): Operation not permitted (0xffffffffffffffff) I've seen some information about his mmap-related behavior and some hints about setting iomem=relaxed in grub. As making changes to grub means completely reinstalling my machine, I would like to ask, if you think that this could be the way to go. Thanks, Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-18 12:41 ` Martin Drašar @ 2018-06-18 13:09 ` Rosen, Rami 2018-06-18 13:23 ` Martin Drašar 0 siblings, 1 reply; 19+ messages in thread From: Rosen, Rami @ 2018-06-18 13:09 UTC (permalink / raw) To: Martin Drašar, users Hi, Martin, How do you bind the device ? is it with igb_uio/vfio ? In case this is what you do - can you please try with uio_pci_generic and tell if you get the same error ? The uio_pci_generic should be included in your distro as one of the kernel modules, you need just to do modprobe uio_pci_generic before binding to DPDK. Regards, Rami Rosen -----Original Message----- From: Martin Drašar [mailto:drasar@ics.muni.cz] Sent: Monday, June 18, 2018 15:41 To: Rosen, Rami <rami.rosen@intel.com>; users@dpdk.org Subject: Re: [dpdk-users] DPDK 17.05 does not find X510 card Dne 18.6.2018 v 11:54 Rosen, Rami napsal(a): > Hi Martin, >> dpdk_init() > > I assume you run your own application. > Can you post the log you get when running testpmd with --log-level=8 and -w I40E0_PCI_BUS_ID ....? > > Also can you post "lspci -n"? > Regards, > Rami Rosen Hello, thank you for getting back to me so quick. I did some debugging and it turned out that i40e drivers were not linked when building the dpdk. I fixed this, but I have encountered another problem... Although the cards are discovered, I get this error: > EAL: pci_map_resource(): cannot mmap(102, 0x7fffc0000000, 0x1000000, > 0x0): Operation not permitted (0xffffffffffffffff) I've seen some information about his mmap-related behavior and some hints about setting iomem=relaxed in grub. As making changes to grub means completely reinstalling my machine, I would like to ask, if you think that this could be the way to go. Thanks, Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-18 13:09 ` Rosen, Rami @ 2018-06-18 13:23 ` Martin Drašar 2018-06-18 13:34 ` Rosen, Rami 0 siblings, 1 reply; 19+ messages in thread From: Martin Drašar @ 2018-06-18 13:23 UTC (permalink / raw) To: Rosen, Rami, users Dne 18.6.2018 v 15:09 Rosen, Rami napsal(a): > Hi, Martin, > How do you bind the device ? is it with igb_uio/vfio ? In case this is what you do - can you please try with uio_pci_generic and tell if you get the same error ? > The uio_pci_generic should be included in your distro as one of the kernel modules, you need just to do modprobe uio_pci_generic before binding to DPDK. > > Regards, > Rami Rosen Hello Rami, yes the devices are bound using the igb_uio. I cannot use uio_pci_generic, as the X710 is not supported in these drivers. > [root@dhcp13-55 pain]# lsmod | grep uio > uio_pci_generic 12588 0 > igb_uio 13224 0 > uio 19259 2 uio_pci_generic,igb_uio > [root@dhcp13-55 pain]# lib/dpdk/dpdk-17.05.1/usertools/dpdk-devbind.py -b uio_pci_generic 0000:04:00.0 > Error: bind failed for 0000:04:00.0 - Cannot bind to driver uio_pci_generic This is listed in known issues: https://doc.dpdk.org/guides/rel_notes/known_issues.html#uio-pci-generic-module-bind-failed-in-x710-xl710-xxv710 Regards, Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-18 13:23 ` Martin Drašar @ 2018-06-18 13:34 ` Rosen, Rami 2018-06-18 13:43 ` Martin Drašar 0 siblings, 1 reply; 19+ messages in thread From: Rosen, Rami @ 2018-06-18 13:34 UTC (permalink / raw) To: Martin Drašar, users Hi Martin, Yes, you are right. Which kernel are you running ? (uname -r) Regards, Rami Rosen -----Original Message----- From: Martin Drašar [mailto:drasar@ics.muni.cz] Sent: Monday, June 18, 2018 16:23 To: Rosen, Rami <rami.rosen@intel.com>; users@dpdk.org Subject: Re: [dpdk-users] DPDK 17.05 does not find X510 card Dne 18.6.2018 v 15:09 Rosen, Rami napsal(a): > Hi, Martin, > How do you bind the device ? is it with igb_uio/vfio ? In case this is what you do - can you please try with uio_pci_generic and tell if you get the same error ? > The uio_pci_generic should be included in your distro as one of the kernel modules, you need just to do modprobe uio_pci_generic before binding to DPDK. > > Regards, > Rami Rosen Hello Rami, yes the devices are bound using the igb_uio. I cannot use uio_pci_generic, as the X710 is not supported in these drivers. > [root@dhcp13-55 pain]# lsmod | grep uio > uio_pci_generic 12588 0 > igb_uio 13224 0 > uio 19259 2 uio_pci_generic,igb_uio > [root@dhcp13-55 pain]# lib/dpdk/dpdk-17.05.1/usertools/dpdk-devbind.py > -b uio_pci_generic 0000:04:00.0 > Error: bind failed for 0000:04:00.0 - Cannot bind to driver > uio_pci_generic This is listed in known issues: https://doc.dpdk.org/guides/rel_notes/known_issues.html#uio-pci-generic-module-bind-failed-in-x710-xl710-xxv710 Regards, Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-18 13:34 ` Rosen, Rami @ 2018-06-18 13:43 ` Martin Drašar 2018-06-18 21:35 ` Martin Drašar 0 siblings, 1 reply; 19+ messages in thread From: Martin Drašar @ 2018-06-18 13:43 UTC (permalink / raw) To: Rosen, Rami, users Dne 18.6.2018 v 15:34 Rosen, Rami napsal(a): > Hi Martin, > > Yes, you are right. > > Which kernel are you running ? (uname -r) > > Regards, > Rami Rosen I am running 3.10.0-693.el7.x86_64. Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-18 13:43 ` Martin Drašar @ 2018-06-18 21:35 ` Martin Drašar 2018-06-19 0:21 ` Rosen, Rami 0 siblings, 1 reply; 19+ messages in thread From: Martin Drašar @ 2018-06-18 21:35 UTC (permalink / raw) To: Rosen, Rami, users Using iomem=relaxed did not change anything. Once I manage to update UEFI drivers on my X520, I will try it to see if it is a driver issue. Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-18 21:35 ` Martin Drašar @ 2018-06-19 0:21 ` Rosen, Rami 2018-06-19 9:57 ` Martin Drašar 0 siblings, 1 reply; 19+ messages in thread From: Rosen, Rami @ 2018-06-19 0:21 UTC (permalink / raw) To: Martin Drašar, users Hi Martin, I assume that you get the mmap() error that you posted earlier when running your own DPDK application. And again, if this is the case, can you please post here the full log you get when running testpmd with --log-level=8 and -w I40E0_PCI_BUS_ID .... (without running any other DPDK application). This may give a direction to solving the issue. Also please post here the exact command you use to launch testpmd. Regards, Rami Rosen -----Original Message----- From: Martin Drašar [mailto:drasar@ics.muni.cz] Sent: Tuesday, June 19, 2018 00:36 To: Rosen, Rami <rami.rosen@intel.com>; users@dpdk.org Subject: Re: [dpdk-users] DPDK 17.05 does not find X510 card Using iomem=relaxed did not change anything. Once I manage to update UEFI drivers on my X520, I will try it to see if it is a driver issue. Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-19 0:21 ` Rosen, Rami @ 2018-06-19 9:57 ` Martin Drašar 2018-06-19 14:12 ` Martin Drašar 0 siblings, 1 reply; 19+ messages in thread From: Martin Drašar @ 2018-06-19 9:57 UTC (permalink / raw) To: Rosen, Rami, users Dne 19.6.2018 v 2:21 Rosen, Rami napsal(a): > Hi Martin, > I assume that you get the mmap() error that you posted earlier when > running your own DPDK application. And again, if this is the case, can > you please post here > the full log you get when running testpmd with --log-level=8 and -w I40E0_PCI_BUS_ID .... (without running any other DPDK application). This may give a direction to solving the issue. Also please post > here the exact command you use to launch testpmd. > > Regards, > Rami Rosen Hi, I am atttaching the testpmd output. There is not much else than what I posted earlier. I am launching the testpmd as you instructed: sudo ./testpmd --log-level=8 -w 0000:04:00.0 -w 0000:04:00.1 -w 0000:05:00.0 -w 0000:05:00.1 I have also swapped the 05:00 card for X520. So, now the system has one X710 and one X520 using different drivers, but the situation is the same. This system has the secure boot on, so I guess it may be the culprit, because the same application is working with the same cards on an unrestricted system. However, the only advice I found so far regarding the 'iomem=relaxed' did not help, so I have currently no idea how to proceed. Thank you for any advice. Martin -------------- next part -------------- EAL: Detected lcore 0 as core 0 on socket 0 EAL: Detected lcore 1 as core 0 on socket 1 EAL: Detected lcore 2 as core 1 on socket 0 EAL: Detected lcore 3 as core 1 on socket 1 EAL: Detected lcore 4 as core 2 on socket 0 EAL: Detected lcore 5 as core 2 on socket 1 EAL: Detected lcore 6 as core 3 on socket 0 EAL: Detected lcore 7 as core 3 on socket 1 EAL: Detected lcore 8 as core 4 on socket 0 EAL: Detected lcore 9 as core 4 on socket 1 EAL: Detected lcore 10 as core 5 on socket 0 EAL: Detected lcore 11 as core 5 on socket 1 EAL: Detected lcore 12 as core 6 on socket 0 EAL: Detected lcore 13 as core 6 on socket 1 EAL: Detected lcore 14 as core 8 on socket 0 EAL: Detected lcore 15 as core 8 on socket 1 EAL: Detected lcore 16 as core 9 on socket 0 EAL: Detected lcore 17 as core 9 on socket 1 EAL: Detected lcore 18 as core 10 on socket 0 EAL: Detected lcore 19 as core 10 on socket 1 EAL: Detected lcore 20 as core 11 on socket 0 EAL: Detected lcore 21 as core 11 on socket 1 EAL: Detected lcore 22 as core 12 on socket 0 EAL: Detected lcore 23 as core 12 on socket 1 EAL: Detected lcore 24 as core 13 on socket 0 EAL: Detected lcore 25 as core 13 on socket 1 EAL: Detected lcore 26 as core 14 on socket 0 EAL: Detected lcore 27 as core 14 on socket 1 EAL: Detected lcore 28 as core 0 on socket 0 EAL: Detected lcore 29 as core 0 on socket 1 EAL: Detected lcore 30 as core 1 on socket 0 EAL: Detected lcore 31 as core 1 on socket 1 EAL: Detected lcore 32 as core 2 on socket 0 EAL: Detected lcore 33 as core 2 on socket 1 EAL: Detected lcore 34 as core 3 on socket 0 EAL: Detected lcore 35 as core 3 on socket 1 EAL: Detected lcore 36 as core 4 on socket 0 EAL: Detected lcore 37 as core 4 on socket 1 EAL: Detected lcore 38 as core 5 on socket 0 EAL: Detected lcore 39 as core 5 on socket 1 EAL: Detected lcore 40 as core 6 on socket 0 EAL: Detected lcore 41 as core 6 on socket 1 EAL: Detected lcore 42 as core 8 on socket 0 EAL: Detected lcore 43 as core 8 on socket 1 EAL: Detected lcore 44 as core 9 on socket 0 EAL: Detected lcore 45 as core 9 on socket 1 EAL: Detected lcore 46 as core 10 on socket 0 EAL: Detected lcore 47 as core 10 on socket 1 EAL: Detected lcore 48 as core 11 on socket 0 EAL: Detected lcore 49 as core 11 on socket 1 EAL: Detected lcore 50 as core 12 on socket 0 EAL: Detected lcore 51 as core 12 on socket 1 EAL: Detected lcore 52 as core 13 on socket 0 EAL: Detected lcore 53 as core 13 on socket 1 EAL: Detected lcore 54 as core 14 on socket 0 EAL: Detected lcore 55 as core 14 on socket 1 EAL: Support maximum 128 logical core(s) by configuration. EAL: Detected 56 lcore(s) EAL: Probing VFIO support... EAL: Module /sys/module/vfio_pci not found! error 2 (No such file or directory) EAL: VFIO modules not loaded, skipping VFIO support... EAL: Module /sys/module/vfio_pci not found! error 2 (No such file or directory) EAL: Setting up physically contiguous memory... EAL: Ask a virtual area of 0xe00000000 bytes EAL: Virtual area found at 0x7fb000000000 (size = 0xe00000000) EAL: Ask a virtual area of 0xe00000000 bytes EAL: Virtual area found at 0x7fa1c0000000 (size = 0xe00000000) EAL: Requesting 56 pages of size 1024MB from socket 0 EAL: Requesting 56 pages of size 1024MB from socket 1 EAL: TSC frequency is ~1997675 KHz EAL: Master lcore 0 is ready (tid=c335940;cpuset=[0]) EAL: lcore 8 is ready (tid=715f700;cpuset=[8]) EAL: lcore 12 is ready (tid=515b700;cpuset=[12]) EAL: lcore 22 is ready (tid=fffff700;cpuset=[22]) EAL: lcore 38 is ready (tid=f7fef700;cpuset=[38]) EAL: lcore 34 is ready (tid=f9ff3700;cpuset=[34]) EAL: lcore 10 is ready (tid=615d700;cpuset=[10]) EAL: lcore 6 is ready (tid=8161700;cpuset=[6]) EAL: lcore 30 is ready (tid=fbff7700;cpuset=[30]) EAL: lcore 54 is ready (tid=effdf700;cpuset=[54]) EAL: lcore 18 is ready (tid=2155700;cpuset=[18]) EAL: lcore 28 is ready (tid=fcff9700;cpuset=[28]) EAL: lcore 50 is ready (tid=f1fe3700;cpuset=[50]) EAL: lcore 26 is ready (tid=fdffb700;cpuset=[26]) EAL: lcore 46 is ready (tid=f3fe7700;cpuset=[46]) EAL: lcore 16 is ready (tid=3157700;cpuset=[16]) EAL: lcore 52 is ready (tid=f0fe1700;cpuset=[52]) EAL: lcore 14 is ready (tid=4159700;cpuset=[14]) EAL: lcore 7 is ready (tid=7960700;cpuset=[7]) EAL: lcore 49 is ready (tid=f27e4700;cpuset=[49]) EAL: lcore 31 is ready (tid=fb7f6700;cpuset=[31]) EAL: lcore 3 is ready (tid=9964700;cpuset=[3]) EAL: lcore 32 is ready (tid=faff5700;cpuset=[32]) EAL: lcore 11 is ready (tid=595c700;cpuset=[11]) EAL: lcore 40 is ready (tid=f6fed700;cpuset=[40]) EAL: lcore 4 is ready (tid=9163700;cpuset=[4]) EAL: lcore 9 is ready (tid=695e700;cpuset=[9]) EAL: lcore 24 is ready (tid=feffd700;cpuset=[24]) EAL: lcore 37 is ready (tid=f87f0700;cpuset=[37]) EAL: lcore 1 is ready (tid=a966700;cpuset=[1]) EAL: lcore 47 is ready (tid=f37e6700;cpuset=[47]) EAL: lcore 45 is ready (tid=f47e8700;cpuset=[45]) EAL: lcore 21 is ready (tid=952700;cpuset=[21]) EAL: lcore 29 is ready (tid=fc7f8700;cpuset=[29]) EAL: lcore 35 is ready (tid=f97f2700;cpuset=[35]) EAL: lcore 5 is ready (tid=8962700;cpuset=[5]) EAL: lcore 53 is ready (tid=f07e0700;cpuset=[53]) EAL: lcore 51 is ready (tid=f17e2700;cpuset=[51]) EAL: lcore 2 is ready (tid=a165700;cpuset=[2]) EAL: lcore 44 is ready (tid=f4fe9700;cpuset=[44]) EAL: lcore 20 is ready (tid=1153700;cpuset=[20]) EAL: lcore 33 is ready (tid=fa7f4700;cpuset=[33]) EAL: lcore 13 is ready (tid=495a700;cpuset=[13]) EAL: lcore 39 is ready (tid=f77ee700;cpuset=[39]) EAL: lcore 43 is ready (tid=f57ea700;cpuset=[43]) EAL: lcore 42 is ready (tid=f5feb700;cpuset=[42]) EAL: lcore 55 is ready (tid=ef7de700;cpuset=[55]) EAL: lcore 48 is ready (tid=f2fe5700;cpuset=[48]) EAL: lcore 27 is ready (tid=fd7fa700;cpuset=[27]) EAL: lcore 36 is ready (tid=f8ff1700;cpuset=[36]) EAL: lcore 25 is ready (tid=fe7fc700;cpuset=[25]) EAL: lcore 23 is ready (tid=ff7fe700;cpuset=[23]) EAL: lcore 15 is ready (tid=3958700;cpuset=[15]) EAL: lcore 41 is ready (tid=f67ec700;cpuset=[41]) EAL: lcore 17 is ready (tid=2956700;cpuset=[17]) EAL: lcore 19 is ready (tid=1954700;cpuset=[19]) EAL: Driver (net_ark) doesn't match the device EAL: Driver (net_avp) doesn't match the device EAL: Driver (net_bnxt) doesn't match the device EAL: Driver (net_cxgbe) doesn't match the device EAL: Driver (net_e1000_igb) doesn't match the device EAL: Driver (net_e1000_igb_vf) doesn't match the device EAL: Driver (net_e1000_em) doesn't match the device EAL: Driver (net_ena) doesn't match the device EAL: Driver (net_enic) doesn't match the device EAL: Driver (net_fm10k) doesn't match the device EAL: PCI device 0000:04:00.0 on NUMA socket 0 EAL: probe driver: 8086:1572 net_i40e EAL: pci_map_resource(): cannot mmap(231, 0x7fbe00000000, 0x1000000, 0x0): Operation not permitted (0xffffffffffffffff) EAL: Requested device 0000:04:00.0 cannot be used EAL: Driver (net_ark) doesn't match the device EAL: Driver (net_avp) doesn't match the device EAL: Driver (net_bnxt) doesn't match the device EAL: Driver (net_cxgbe) doesn't match the device EAL: Driver (net_e1000_igb) doesn't match the device EAL: Driver (net_e1000_igb_vf) doesn't match the device EAL: Driver (net_e1000_em) doesn't match the device EAL: Driver (net_ena) doesn't match the device EAL: Driver (net_enic) doesn't match the device EAL: Driver (net_fm10k) doesn't match the device EAL: PCI device 0000:04:00.1 on NUMA socket 0 EAL: probe driver: 8086:1572 net_i40e EAL: pci_map_resource(): cannot mmap(231, 0x7fbe00000000, 0x1000000, 0x0): Operation not permitted (0xffffffffffffffff) EAL: Requested device 0000:04:00.1 cannot be used EAL: Driver (net_ark) doesn't match the device EAL: Driver (net_avp) doesn't match the device EAL: Driver (net_bnxt) doesn't match the device EAL: Driver (net_cxgbe) doesn't match the device EAL: Driver (net_e1000_igb) doesn't match the device EAL: Driver (net_e1000_igb_vf) doesn't match the device EAL: Driver (net_e1000_em) doesn't match the device EAL: Driver (net_ena) doesn't match the device EAL: Driver (net_enic) doesn't match the device EAL: Driver (net_fm10k) doesn't match the device EAL: Driver (net_i40e) doesn't match the device EAL: Driver (net_i40e_vf) doesn't match the device EAL: PCI device 0000:05:00.0 on NUMA socket 0 EAL: probe driver: 8086:154d net_ixgbe EAL: pci_map_resource(): cannot mmap(231, 0x7fbe00000000, 0x80000, 0x0): Operation not permitted (0xffffffffffffffff) EAL: Requested device 0000:05:00.0 cannot be used EAL: Driver (net_ark) doesn't match the device EAL: Driver (net_avp) doesn't match the device EAL: Driver (net_bnxt) doesn't match the device EAL: Driver (net_cxgbe) doesn't match the device EAL: Driver (net_e1000_igb) doesn't match the device EAL: Driver (net_e1000_igb_vf) doesn't match the device EAL: Driver (net_e1000_em) doesn't match the device EAL: Driver (net_ena) doesn't match the device EAL: Driver (net_enic) doesn't match the device EAL: Driver (net_fm10k) doesn't match the device EAL: Driver (net_i40e) doesn't match the device EAL: Driver (net_i40e_vf) doesn't match the device EAL: PCI device 0000:05:00.1 on NUMA socket 0 EAL: probe driver: 8086:154d net_ixgbe EAL: pci_map_resource(): cannot mmap(231, 0x7fbe00000000, 0x80000, 0x0): Operation not permitted (0xffffffffffffffff) EAL: Requested device 0000:05:00.1 cannot be used EAL: No probed ethernet devices USER1: create a new mbuf pool <mbuf_pool_socket_0>: n=587456, size=2176, socket=0 USER1: create a new mbuf pool <mbuf_pool_socket_1>: n=587456, size=2176, socket=1 Done No commandline core given, start packet forwarding io packet forwarding - ports=0 - cores=0 - streams=0 - NUMA support enabled, MP over anonymous pages disabled io packet forwarding - CRC stripping enabled - packets/burst=32 nb forwarding cores=1 - nb forwarding ports=0 RX queues=1 - RX desc=128 - RX free threshold=0 RX threshold registers: pthresh=0 hthresh=0 wthresh=0 TX queues=1 - TX desc=512 - TX free threshold=0 TX threshold registers: pthresh=0 hthresh=0 wthresh=0 TX RS bit threshold=0 - TXQ flags=0x0 Press enter to exit Telling cores to stop... Waiting for lcores to finish... +++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++ RX-packets: 0 RX-dropped: 0 RX-total: 0 TX-packets: 0 TX-dropped: 0 TX-total: 0 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Done. Bye... ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-19 9:57 ` Martin Drašar @ 2018-06-19 14:12 ` Martin Drašar 2018-06-21 5:58 ` Avi Cohen (A) 0 siblings, 1 reply; 19+ messages in thread From: Martin Drašar @ 2018-06-19 14:12 UTC (permalink / raw) To: Rosen, Rami, users Just some additional details (strace around the pic probe): > write(1, "EAL: PCI device 0000:05:00.0 on "..., 46EAL: PCI device 0000:05:00.0 on NUMA socket 0) = 46 > sendto(3, "<30>Jun 19 16:05:21 framework[42"..., 84, MSG_NOSIGNAL, NULL, 0) = 84 > write(1, "EAL: probe driver: 8086:154d n"..., 41EAL: probe driver: 8086:154d net_ixgbe) = 41 > sendto(3, "<30>Jun 19 16:05:21 framework[42"..., 79, MSG_NOSIGNAL, NULL, 0) = 79 > openat(AT_FDCWD, "/sys/bus/pci/devices/0000:05:00.0/uio", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 94 > getdents(94, /* 3 entries */, 32768) = 72 > close(94) = 0 > open("/dev/uio2", O_RDWR) = 94 > open("/sys/class/uio/uio2/device/config", O_RDWR) = 95 > open("/sys/bus/pci/devices/0000:05:00.0/resource0", O_RDWR) = 96 > mmap(0x7fa400000000, 524288, PROT_READ|PROT_WRITE, MAP_SHARED, 96, 0) = -1 EPERM (Operation not permitted) > write(1, "EAL: pci_map_resource(): cannot "..., 117EAL: pci_map_resource(): cannot mmap(96, 0x7fa400000000, 0x80000, 0x0): Operation not permitted (0xffffffffffffffff)) = 117 > sendto(3, "<27>Jun 19 16:05:21 framework[42"..., 155, MSG_NOSIGNAL, NULL, 0) = 155 > close(96) = 0 > close(95) = 0 > close(94) = 0 > write(1, "EAL: Requested device 0000:05:00"..., 50EAL: Requested device 0000:05:00.0 cannot be used) = 50 Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-19 14:12 ` Martin Drašar @ 2018-06-21 5:58 ` Avi Cohen (A) 2018-06-21 11:02 ` Martin Drašar 0 siblings, 1 reply; 19+ messages in thread From: Avi Cohen (A) @ 2018-06-21 5:58 UTC (permalink / raw) To: Martin Drašar, Rosen, Rami, users Look at this https://stackoverflow.com/questions/8213671/mmap-operation-not-permitted > -----Original Message----- > From: users [mailto:users-bounces@dpdk.org] On Behalf Of Martin Dra?ar > Sent: Tuesday, 19 June, 2018 5:13 PM > To: Rosen, Rami; users@dpdk.org > Subject: Re: [dpdk-users] DPDK 17.05 does not find X510 card > > Just some additional details (strace around the pic probe): > > > write(1, "EAL: PCI device 0000:05:00.0 on "..., 46EAL: PCI device > > 0000:05:00.0 on NUMA socket 0) = 46 sendto(3, "<30>Jun 19 16:05:21 > framework[42"..., 84, MSG_NOSIGNAL, NULL, 0) = 84 > > write(1, "EAL: probe driver: 8086:154d n"..., 41EAL: probe driver: > 8086:154d net_ixgbe) = 41 > > sendto(3, "<30>Jun 19 16:05:21 framework[42"..., 79, MSG_NOSIGNAL, > > NULL, 0) = 79 openat(AT_FDCWD, "/sys/bus/pci/devices/0000:05:00.0/uio", > O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 94 > > getdents(94, /* 3 entries */, 32768) = 72 > > close(94) = 0 > > open("/dev/uio2", O_RDWR) = 94 > > open("/sys/class/uio/uio2/device/config", O_RDWR) = 95 > > open("/sys/bus/pci/devices/0000:05:00.0/resource0", O_RDWR) = 96 > > mmap(0x7fa400000000, 524288, PROT_READ|PROT_WRITE, MAP_SHARED, > 96, 0) > > = -1 EPERM (Operation not permitted) write(1, "EAL: > > pci_map_resource(): cannot "..., 117EAL: pci_map_resource(): cannot > mmap(96, 0x7fa400000000, 0x80000, 0x0): Operation not permitted > (0xffffffffffffffff)) = 117 sendto(3, "<27>Jun 19 16:05:21 framework[42"..., 155, > MSG_NOSIGNAL, NULL, 0) = 155 > > close(96) = 0 > > close(95) = 0 > > close(94) = 0 > > write(1, "EAL: Requested device 0000:05:00"..., 50EAL: Requested > > device 0000:05:00.0 cannot be used) = 50 > > Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-21 5:58 ` Avi Cohen (A) @ 2018-06-21 11:02 ` Martin Drašar 2018-06-21 15:07 ` Stephen Hemminger 0 siblings, 1 reply; 19+ messages in thread From: Martin Drašar @ 2018-06-21 11:02 UTC (permalink / raw) To: Avi Cohen (A), Rosen, Rami, users Dne 21.6.2018 v 7:58 Avi Cohen (A) napsal(a): > Look at this > https://stackoverflow.com/questions/8213671/mmap-operation-not-permitted Hello Avi, thank you for chiming in. Neither iomem runtime parameter or allowing mmap on 0 page helped me. As for the latter, DPDK correctly maps to PCI region, so that is not the problem. Looking at the mmap source, there are basically only two points that result in EPERM error. First one is related to incorrect flag combination (not a DPDK case) the second is related to the file descriptor of the resource being locked (should not be, but it is the only possibility). That lock may have to do something with Secure boot being on, as almost the same system without secure boot is working ok. I built a custom kernel with CONFIG_STRICT_DEVMEM turned off, but it's going to take me some time to hammer it into the system, mainly because I am leaving for a vacation today. But it would be great if anyone, who has experience running DPDK on secure booted systems, could share their experience. Cheers, Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-21 11:02 ` Martin Drašar @ 2018-06-21 15:07 ` Stephen Hemminger 2018-06-23 13:00 ` Rosen, Rami 0 siblings, 1 reply; 19+ messages in thread From: Stephen Hemminger @ 2018-06-21 15:07 UTC (permalink / raw) To: Martin Drašar; +Cc: Avi Cohen (A), Rosen, Rami, users On Thu, 21 Jun 2018 13:02:34 +0200 Martin Drašar <drasar@ics.muni.cz> wrote: > Dne 21.6.2018 v 7:58 Avi Cohen (A) napsal(a): > > Look at this > > https://stackoverflow.com/questions/8213671/mmap-operation-not-permitted > > Hello Avi, > > thank you for chiming in. Neither iomem runtime parameter or allowing > mmap on 0 page helped me. As for the latter, DPDK correctly maps to PCI > region, so that is not the problem. > > Looking at the mmap source, there are basically only two points that > result in EPERM error. First one is related to incorrect flag > combination (not a DPDK case) the second is related to the file > descriptor of the resource being locked (should not be, but it is the > only possibility). > > That lock may have to do something with Secure boot being on, as almost > the same system without secure boot is working ok. I built a custom > kernel with CONFIG_STRICT_DEVMEM turned off, but it's going to take me > some time to hammer it into the system, mainly because I am leaving for > a vacation today. > > But it would be great if anyone, who has experience running DPDK on > secure booted systems, could share their experience. Secure boot disables direct access to memory which is required for DPDK via uio. This is by design since UIO would allow userspace (as root) to read or write any location in memory. Secure boot should work with VFIO. As long as you have an IOMMU, VFIO is a much better solution. ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-21 15:07 ` Stephen Hemminger @ 2018-06-23 13:00 ` Rosen, Rami 2018-06-25 8:23 ` Martin Drašar 0 siblings, 1 reply; 19+ messages in thread From: Rosen, Rami @ 2018-06-23 13:00 UTC (permalink / raw) To: Stephen Hemminger, Martin Drašar; +Cc: Avi Cohen (A), users Hi all, >Secure boot should work with VFIO. As long as you have an IOMMU, >VFIO is a much better solution. Stephen is right; moreover, DPDK documentation says explicitly that ... "If UEFI secure boot is enabled, the Linux kernel may disallow the use of UIO on the system. Therefore, devices for use by DPDK should be bound to the vfio-pci kernel module rather than igb_uio or uio_pci_generic. For more details see Binding and Unbinding Network Ports to/from the Kernel Modules below." ... See section 4.1, "UIO", in: https://doc.dpdk.org/guides/linux_gsg/linux_drivers.html Regards, Rami Rosen ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-23 13:00 ` Rosen, Rami @ 2018-06-25 8:23 ` Martin Drašar 2018-06-25 9:35 ` Rosen, Rami 0 siblings, 1 reply; 19+ messages in thread From: Martin Drašar @ 2018-06-25 8:23 UTC (permalink / raw) To: Rosen, Rami; +Cc: Stephen Hemminger, Avi Cohen (A), users Hi, Stephen, thanks four input. I have already read that part of documentation Rami posted, but that ‘may disallow’ left me hoping there are some situations when it is not disallowed. If it is indeed not possible using the igb uio, I will have to do it with the vfio. However, and that is the reason why I was doing the dances with the kernel, I was not able to find a guide to bind the cards to vfio in non-virtual environent, other than a notice that all ports must be bound to vfio at once. Can you point me to some resources regarding the iommu and vfio? Thanks, Martin 23. 6. 2018 v 15:00, Rosen, Rami <rami.rosen@intel.com>: > Hi all, > >> Secure boot should work with VFIO. As long as you have an IOMMU, >> VFIO is a much better solution. > > Stephen is right; moreover, DPDK documentation says explicitly that > ... > "If UEFI secure boot is enabled, the Linux kernel may disallow the use of UIO on the system. Therefore, devices for use by DPDK should be bound to the vfio-pci kernel module rather than igb_uio or uio_pci_generic. For more details see Binding and Unbinding Network Ports to/from the Kernel Modules below." > ... > See section 4.1, "UIO", in: > https://doc.dpdk.org/guides/linux_gsg/linux_drivers.html > > Regards, > Rami Rosen > > ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-25 8:23 ` Martin Drašar @ 2018-06-25 9:35 ` Rosen, Rami 2018-07-11 13:47 ` Martin Drašar 0 siblings, 1 reply; 19+ messages in thread From: Rosen, Rami @ 2018-06-25 9:35 UTC (permalink / raw) To: Martin Drašar; +Cc: Stephen Hemminger, Avi Cohen (A), users Hi Martin, There is info about VFIO and IOMMU for DPDK in the Linux Getting Started Guide: https://doc.dpdk.org/guides/linux_gsg/index.html Generally, you need to follow section 8.1.3 for IOMMU: ... 8.1.3 Linux boot command line If it wants to use VFIO, use the following additional grub parameters: iommu=pt intel_iommu=on ... And follow section 4.2 (VFIO) ... For VFIO you need modprobe vfio-pci ... And use it with --bind when running the dpdk-devnbind.py script. Regards, Rami Rosen -----Original Message----- From: Martin Drašar [mailto:drasar@ics.muni.cz] Sent: Monday, June 25, 2018 11:24 To: Rosen, Rami <rami.rosen@intel.com> Cc: Stephen Hemminger <stephen@networkplumber.org>; Avi Cohen (A) <avi.cohen@huawei.com>; users@dpdk.org Subject: Re: [dpdk-users] DPDK 17.05 does not find X510 card Hi, Stephen, thanks four input. I have already read that part of documentation Rami posted, but that ‘may disallow’ left me hoping there are some situations when it is not disallowed. If it is indeed not possible using the igb uio, I will have to do it with the vfio. However, and that is the reason why I was doing the dances with the kernel, I was not able to find a guide to bind the cards to vfio in non-virtual environent, other than a notice that all ports must be bound to vfio at once. Can you point me to some resources regarding the iommu and vfio? Thanks, Martin 23. 6. 2018 v 15:00, Rosen, Rami <rami.rosen@intel.com>: > Hi all, > >> Secure boot should work with VFIO. As long as you have an IOMMU, VFIO >> is a much better solution. > > Stephen is right; moreover, DPDK documentation says explicitly that > ... > "If UEFI secure boot is enabled, the Linux kernel may disallow the use of UIO on the system. Therefore, devices for use by DPDK should be bound to the vfio-pci kernel module rather than igb_uio or uio_pci_generic. For more details see Binding and Unbinding Network Ports to/from the Kernel Modules below." > ... > See section 4.1, "UIO", in: > https://doc.dpdk.org/guides/linux_gsg/linux_drivers.html > > Regards, > Rami Rosen > > ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [dpdk-users] DPDK 17.05 does not find X510 card 2018-06-25 9:35 ` Rosen, Rami @ 2018-07-11 13:47 ` Martin Drašar 0 siblings, 0 replies; 19+ messages in thread From: Martin Drašar @ 2018-07-11 13:47 UTC (permalink / raw) To: Rosen, Rami; +Cc: Stephen Hemminger, Avi Cohen (A), users Dne 25.6.2018 v 11:35 Rosen, Rami napsal(a): > Hi Martin, > > There is info about VFIO and IOMMU for DPDK in the > Linux Getting Started Guide: > https://doc.dpdk.org/guides/linux_gsg/index.html > > > Generally, you need to follow section 8.1.3 for IOMMU: > ... > 8.1.3 Linux boot command line > > If it wants to use VFIO, use the following additional grub parameters: > iommu=pt intel_iommu=on > ... > And follow section 4.2 (VFIO) > ... > For VFIO you need modprobe vfio-pci > ... > > And use it with --bind when running the dpdk-devnbind.py script. > > Regards, > Rami Rosen Thank you Rami and everyone who participated! I finally managed to run if with the VFIO drivers. I completely missed the part about IOMMU enabling in Getting started guide. Cheers, Martin ^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2018-07-11 13:48 UTC | newest] Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-06-18 8:55 [dpdk-users] DPDK 17.05 does not find X510 card Martin Drašar 2018-06-18 8:56 ` [dpdk-users] DPDK 17.05 does not find X710 card Martin Drašar 2018-06-18 9:54 ` [dpdk-users] DPDK 17.05 does not find X510 card Rosen, Rami 2018-06-18 12:41 ` Martin Drašar 2018-06-18 13:09 ` Rosen, Rami 2018-06-18 13:23 ` Martin Drašar 2018-06-18 13:34 ` Rosen, Rami 2018-06-18 13:43 ` Martin Drašar 2018-06-18 21:35 ` Martin Drašar 2018-06-19 0:21 ` Rosen, Rami 2018-06-19 9:57 ` Martin Drašar 2018-06-19 14:12 ` Martin Drašar 2018-06-21 5:58 ` Avi Cohen (A) 2018-06-21 11:02 ` Martin Drašar 2018-06-21 15:07 ` Stephen Hemminger 2018-06-23 13:00 ` Rosen, Rami 2018-06-25 8:23 ` Martin Drašar 2018-06-25 9:35 ` Rosen, Rami 2018-07-11 13:47 ` Martin Drašar
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).