[dpdk-dev] Issues running Ethtool on KNI interfaces

Zhang, Helin helin.zhang at intel.com
Mon Oct 13 09:46:24 CEST 2014


Hi Desh

Actually KNI provide a path to exchange info/actions between user space and kernel space. You can read kni example application and KNI kernel module and KNI library for more details. It already supports setting MTU, link up/down the port, etc.

Regards,
Helin

> -----Original Message-----
> From: Deshvanth Mirle Jayaprakash (dmirleja) [mailto:dmirleja at cisco.com]
> Sent: Monday, October 13, 2014 3:39 PM
> To: Zhang, Helin; dev at dpdk.org
> Subject: Re: Issues running Ethtool on KNI interfaces
> 
> Thanks Helin, have been trying this for some time, Is there any other way I can
> pass IOCTLs to IGB-UIO interfaces. Can I use /dev/uio0 and /dev/uio1 ? Can I
> use IOCTLS on these references in Kernel to gather interface statistics, set
> MTU or bring up/down UIO interfaces.
> 
> /Desh
> 
> On 10/13/14 12:34 AM, "Zhang, Helin" <helin.zhang at intel.com> wrote:
> 
> >Hi Desh
> >
> >You tried to use ethtool for KNI interfaces in VM, right? I don't think
> >it is supported in VM.
> >Currently it just supports ethtool for KNI interfaces in host for some
> >igb and ixgbe NICs.
> >
> >Regards,
> >Helin
> >
> >> -----Original Message-----
> >> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Deshvanth Mirle
> >> Jayaprakash (dmirleja)
> >> Sent: Monday, October 13, 2014 3:21 PM
> >> To: dev at dpdk.org
> >> Subject: [dpdk-dev] Issues running Ethtool on KNI interfaces
> >>
> >> Hi,
> >>
> >> Hypervisor: KVM
> >>
> >> VM: Linux OS with 2.6.32 Kernel
> >>
> >> VM Settings:
> >>
> >> 8 vCPUs, 8192 MB of memory, CPU Configuration: Copy Host CPU Config
> >> (SandyBridge), Manually set CPU topology: Sockets=2, Cores=4,
> >> Threads=1
> >>
> >> 10Gigi Passthrough Interfaces attached to VM: Intel X520
> >>
> >>
> >> DPDK settings:
> >>
> >>
> >> DPDK Version: 1.6R2
> >>
> >>
> >> echo 512 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
> >>
> >> rmmod ixgbe
> >>
> >> insmod igb_uio.ko
> >>
> >> mkdir /mnt/hugepages
> >>
> >> mount -t hugetlbfs nodev /mnt/hugepages
> >>
> >> #./igb_uio_bind.py --status
> >>
> >> #./igb_uio_bind.py --bind=igb_uio 03:01.0
> >>
> >> #./igb_uio_bind.py --bind=igb_uio 03:02.0
> >>
> >> #./igb_uio_bind.py --status
> >>
> >> modprobe hwmon
> >>
> >> insmod rte_kni.ko
> >>
> >> ./kni -c 0x1E -n 2 --socket-mem 512 -- -p 0x3
> >>--config="(0,1,3),(1,2,4)" &
> >>
> >>
> >> Having KNI process running in the background, creates two KNI
> >>interfaces  called vEth0 and vEth1 which corresponds to IGB-UIO
> >>interfaces attached to  the Userspace. The issue is that the Ethtool
> >>doesn't work with KNI interfaces.
> >> Is there anything that I am missing, How can I get Ethtool to work
> >>with KNI  interfaces? Also, If I do not use --socket-mem OR -m EAL
> >>option, KNI application  consumes all the huge pages(It doesn't mater
> >>512/4096) assigned in the very  first step.Is that expected behavior?
> >>Can I get KNI to work without assigning  any Hugepages?
> >>
> >>
> >>
> >> Also, I have attached screen shots of KNI log file. Please take a look.
> >>
> >>
> >> Thanks,
> >>
> >> Desh



More information about the dev mailing list