HI Scott, KNI app effectively will become your datapath, it is a sample app, you can modify it. It receive packets from PMD and pass all packets to the kernel path from userspace.
You can run l2fwd, or other app, you will need to run it on other PMD ports. Not on the same ports on KNI. Or you will need to modify KNI app, to distribute packets to kernel path or your new datapath. Basically it will be like coding to combine kni app and l2fwd app. Regards, Choi, Sy Jong Platform Application Engineer From: "Scott.Jhuang (???) : 6309" [mailto:scott.jhu...@cas-well.com] Sent: Friday, July 17, 2015 3:53 PM To: Choi, Sy Jong; dev at dpdk.org; "Sandy.Liu (???) : 6817"; "Alan Yu (???) : 6632" Subject: Re: [dpdk-dev] How to get net_device and use struct ethtool_cmd at DPDK enverinment? Hi Sy Jong, If I using KNI in DPDK, can I use another applications at the same time? (e.g. L2 forward, L3 forward) Choi, Sy Jong ? 2015?07?15? 18:01 ??: Hi Scott, You will need to start KNI sample app, it will create the vEth interface. After kni app, it will be there, kni app is the datapath, it get the packet into the kernel. http://dpdk.org/doc/guides/prog_guide/kernel_nic_interface.html 1. Insert the KNI kernel module: 1. insmod ./rte_kni.ko If using KNI in multi-thread mode, use the following command line: insmod ./rte_kni.ko kthread_mode=multiple 1. Running the KNI sample application: 1. ./kni -c -0xf0 -n 4 -- -p 0x3 -P -config="(0,4,6),(1,5,7)" This command runs the kni sample application with two physical ports. Each port pins two forwarding cores (ingress/egress) in user space. Regards, Choi, Sy Jong Platform Application Engineer From: "Scott.Jhuang (?? ?) : 6309" [mailto:scott.jhu...@cas-well.com] Sent: Wednesday, July 15, 2015 5:54 PM To: Choi, Sy Jong; dev at dpdk.org<mailto:dev at dpdk.org>; "Sandy.Liu (?? ?) : 6817"; "Alan Yu (?? ?) : 6632" Subject: Re: [dpdk-dev] How to get net_device and use struct ethtool_cmd at DPDK enverinment? Hi Sy Jong, If I load "rte_kni.ko" driver, the net_device structs will be initialled by KNI, right? If yes, how can I handle these net_device structs in other driver, because I using "for_each_netdev()" kernel API can't find the net_device structs which KNI initialled. Or these structs have not been exported to kernel? Choi, Sy Jong ? 2015?07?01? 15:55 ??: Hi Scott, Please refer to our KNI library at:- dpdk-1.8.0\lib\librte_eal\linuxapp\kni\ethtool\igb\igb.h Regards, Choi, Sy Jong Platform Application Engineer From: "Scott.Jhuang (?? ?) : 6309" [mailto:scott.jhu...@cas-well.com] Sent: Wednesday, July 01, 2015 2:44 PM To: Choi, Sy Jong; dev at dpdk.org<mailto:dev at dpdk.org> Subject: Re: [dpdk-dev] How to get net_device and use struct ethtool_cmd at DPDK enverinment? Hi Sy Jong, Have any idea? "Scott.Jhuang (? ??) : 6309" ? 2015?06?23? 21:24 ??: Dear Sy Jong, Yes, I have check out DPDK KNI, but I still can't find how to prepare net_device structure... And I also doesn't find how to get "ethtool_cmd.phy_address" Could you let me know the path of source code folder Choi, Sy Jong ? 2015?06?19? 10:35 ??: Hi Scott, DPDK PMD are interfacing using rte_ethdev.c which link to ixgbe_ethdev.c there?s no ?net_device? in our code. But if you search DPDk code based, we have KNI example to teach you how to prepare the net_device structure. Have you check out our DPDK KNI codes? Regards, Choi, Sy Jong Platform Application Engineer From: "Scott.Jhuang (? ? ?) : 6309" [mailto:scott.jhu...@cas-well.com] Sent: Thursday, June 18, 2015 12:25 PM To: Choi, Sy Jong; dev at dpdk.org<mailto:dev at dpdk.org> Subject: Re: [dpdk-dev] How to get net_device and use struct ethtool_cmd at DPDK enverinment? Dear Sy Jong, I'm planning to program a driver to get all the ethport's net_device structure, because I need some information from these net_device structures. And I also need to use net_device struct's ethtool_cmd to get some information e.g. ethtool_cmd.phy_address, net_device->ethtool_ops->get_settings. In fact, I need some information from net_device struct to access and control PHY's link-up/down, and I reference igb driver to design the link-up/down functions, since in DPDK envirenment doesn't have igb driver, so In DPDK envirenment, I don't know how to get network deivce's net_device structs and more information which initial by igb driver(because doesn't have igb driver). Choi, Sy Jong ? 2015?06?17? 11:15 ??: Hi Scott, You are right, the KNI will be a good reference for you. It demonstrate how DPDK PMD interface with kernel. May I know are you planning to build the interface to ethtool? You can try running KNI app. Regards, Choi, Sy Jong Platform Application Engineer From: "Scott.Jhuang (?? ?) : 6309" [mailto:scott.jhu...@cas-well.com] Sent: Wednesday, June 17, 2015 11:12 AM To: Choi, Sy Jong; dev at dpdk.org<mailto:dev at dpdk.org> Subject: Re: [dpdk-dev] How to get net_device and use struct ethtool_cmd at DPDK enverinment? Hi Sy Jong, But...I am programming a driver now, have any sample driver I can reference? Choi, Sy Jong ? 2015?06?16? 14:48 ??: Hi Scott, You can review DPDK KNI sample app, there's ethtool support using a vEth device interfacing to DPDK PMD. Pure DPDK PMD require programming to display the information in ethtool. The interfacing is demonstrate on KNI sample app. Regards, Choi, Sy Jong Platform Application Engineer -----Original Message----- From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of "Scott.Jhuang (???) : 6309" Sent: Monday, June 15, 2015 6:35 PM To: dev at dpdk.org<mailto:dev at dpdk.org> Subject: [dpdk-dev] How to get net_device and use struct ethtool_cmd at DPDK enverinment? Hi, I want to get etherport's net_device structs and using ethtool_cmd to get some information of etherports. Are these capabilitys igb_uio driver also provided? If not, how can I get net_devices and use ethtool_cmd capabilitys? -- Best Regards, Scott Jhuang Software Engineering Dept. Software Engineer CASwell 238 ?????????242?8? 8F, No.242, Bo-Ai St., Shu-Lin Dist, New Taipei City 238, Taiwan Tel?+886-2-7705-8888 # 6309 Fax?+886-2-7731-9988 E-mail?scott.jhuang at cas-well.com<mailto:scott.jhuang at cas-well.com><mailto:scott.jhuang at cas-well.com><mailto:scott.jhuang at cas-well.com> CASWELL Inc. ???? http://www.cas-well.com ????????????????????????????????????????????? This email may contain confidential information. Please do not use or disclose it in any way and delete it if you are not the intended recipient. -- Best Regards, Scott Jhuang Software Engineering Dept. Software Engineer CASwell 238 ?????????242?8? 8F, No.242, Bo-Ai St., Shu-Lin Dist, New Taipei City 238, Taiwan Tel?+886-2-7705-8888 # 6309 Fax?+886-2-7731-9988 E-mail?scott.jhuang at cas-well.com<mailto:scott.jhuang at cas-well.com> CASWELL Inc. ???? http://www.cas-well.com ??????????????????????????????????????? ?? ?? ?? This email may contain confidential information. Please do not use or disclose it in any way and delete it if you are not the intended recipient. -- Best Regards, Scott Jhuang Software Engineering Dept. Software Engineer CASwell 238 ?????????242?8? 8F, No.242, Bo-Ai St., Shu-Lin Dist, New Taipei City 238, Taiwan Tel?+886-2-7705-8888 # 6309 Fax?+886-2-7731-9988 E-mail?scott.jhuang at cas-well.com<mailto:scott.jhuang at cas-well.com> CASWELL Inc. ???? http://www.cas-well.com ????????????????????????????????????????? ?? ?? This email may contain confidential information. Please do not use or disclose it in any way and delete it if you are not the intended recipient. -- Best Regards, Scott Jhuang Software Engineering Dept. Software Engineer CASwell 238 ?????????242?8? 8F, No.242, Bo-Ai St., Shu-Lin Dist, New Taipei City 238, Taiwan Tel?+886-2-7705-8888 # 6309 Fax?+886-2-7731-9988 E-mail?scott.jhuang at cas-well.com<mailto:scott.jhuang at cas-well.com> CASWELL Inc. ???? http://www.cas-well.com -- Best Regards, Scott Jhuang Software Engineering Dept. Software Engineer CASwell 238 ?????????242?8? 8F, No.242, Bo-Ai St., Shu-Lin Dist, New Taipei City 238, Taiwan Tel?+886-2-7705-8888 # 6309 Fax?+886-2-7731-9988 E-mail?scott.jhuang at cas-well.com<mailto:scott.jhuang at cas-well.com> CASWELL Inc. ???? http://www.cas-well.com ????????????????????????????????????????????? This email may contain confidential information. Please do not use or disclose it in any way and delete it if you are not the intended recipient. -- Best Regards, Scott Jhuang Software Engineering Dept. Software Engineer CASwell 238 ?????????242?8? 8F, No.242, Bo-Ai St., Shu-Lin Dist, New Taipei City 238, Taiwan Tel?+886-2-7705-8888 # 6309 Fax?+886-2-7731-9988 E-mail?scott.jhuang at cas-well.com<mailto:scott.jhuang at cas-well.com> CASWELL Inc. ???? http://www.cas-well.com ????????????????????????????????????????????? This email may contain confidential information. Please do not use or disclose it in any way and delete it if you are not the intended recipient. -- Best Regards, Scott Jhuang Software Engineering Dept. Software Engineer CASwell 238 ?????????242?8? 8F, No.242, Bo-Ai St., Shu-Lin Dist, New Taipei City 238, Taiwan Tel?+886-2-7705-8888 # 6309 Fax?+886-2-7731-9988 E-mail?scott.jhuang at cas-well.com<mailto:scott.jhuang at cas-well.com> CASWELL Inc. ???? http://www.cas-well.com ????????????????????????????????????????????? This email may contain confidential information. Please do not use or disclose it in any way and delete it if you are not the intended recipient.