From: 최익성 <pnk003@naver.com>
To: ChoiSy Jong <sy.jong.choi@intel.com>, Kyle Larose <eomereadig@gmail.com>
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
Date: Wed, 21 Oct 2015 22:30:16 +0900 (KST) [thread overview]
Message-ID: <3dac8affde3dc157dba7365e919718b@cweb28.nm.nhnsystem.com> (raw)
In-Reply-To: <697F8B1B48670548A5BAB03E8283550F368076B4@PGSMSX108.gar.corp.intel.com>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=UTF-8, Size: 5688 bytes --]
Dear Kyle Larose and Sy Jong Choi.
Thank you very much for your precious advices.
I found the ierror counting function. It is ixgbe_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats) in ~/dpdk/lib/librte_pmd_ixgbe/ixgbe_ethdev.c.
The rx-errors are due to IXGBE_MPC errors at registers in PCIe NIC.
IXGBE_MPC register is Missed Packets Count[0-7]. This counter counts the number of missed packets per packet buffer. Packets are missed when the receive FIFO has insufficient space to store the incoming packet. This could be caused because of too few buffers allocated, or because there is insufficient bandwidth on the IO bus.
I don't know why this happens even though very low traffic load such as 5%.
Thank you very much.
Sincerely Yours,
Ick-Sung Choi.
-----Original Message-----
From: "Choi, Sy Jong"<sy.jong.choi@intel.com>
To: "ìµìµì±"<pnk003@naver.com>; "Kyle Larose"<eomereadig@gmail.com>;
Cc: "dev@dpdk.org"<dev@dpdk.org>;
Sent: 2015-10-21 (ì) 11:07:17
Subject: RE: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
Hi Ick-Sung,
You will need to use igb_uio for DPDK. That is the Poll mode driver.
ixgbe is for the kernel, and do not support DPDK.
Regards,
Choi, Sy Jong
Platform Application Engineer
-----Original Message-----
From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of ???
Sent: Wednesday, October 21, 2015 10:04 AM
To: Kyle Larose
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
Dear Kyle Larose.
Thank you very much for your precious advice and answer.
I will try your suggestions.
I have a question. Can I use igb_uio driver in DPDK?
When I stalled the network device driver in DPDK.
I used the following commands and I see that the 10GbE devices have igb_uio device driver.
sudo /sbin/modprobe uio
sudo /sbin/insmod $RTE_SDK/$RTE_TARGET/kmod/igb_uio.ko
Network devices using DPDK-compatible driver ============================================
0000:02:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=igb_uio unused=
0000:02:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=igb_uio unused=
Network devices using kernel driver
===================================
0000:00:19.0 'Ethernet Connection I217-V' if=eth0 drv=e1000e unused=igb_uio *Active*
0000:04:00.0 '82572EI Gigabit Ethernet Controller (Copper)' if=eth3 drv=e1000e unused=igb_uio
The network device driver seems to be igb_uio.
If I bind the network device to ixgbe using the following commands, the network device seems to be connected to kernel, not the DPDK.
sudo ${RTE_SDK}/tools/dpdk_nic_bind.py -b ixgbe 0000:02:00.0 && echo "OK"
sudo ${RTE_SDK}/tools/dpdk_nic_bind.py -b ixgbe 0000:02:00.1 && echo "OK"
Can I use ixgbe driver for DPDK?
If I can, would you tell me how can I specify it?
Thank you very much for your precious advices.
Sincerely Yours,
Ick-Sung Choi.
-----Original Message-----
From: "Kyle Larose"<eomereadig@gmail.com>
To: "ìµìµì±"<pnk003@naver.com>;
Cc: <dev@dpdk.org>;
Sent: 2015-10-20 (í) 22:50:43
Subject: Re: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
On Tue, Oct 20, 2015 at 2:12 AM, ìµìµì± <pnk003@naver.com> wrote:
> Dear DPDK experts.
>
> Thank you very much for your best great efforts and precious answers.
>
>
> When I run test-pmd, most of received packets are RX-error.
>
> The computer has two 10GbE ports Intel NIC and the two ports are loop-backed each other.
>
> The result shows that the loop-backed packets have rx-error occured from ethernet device port.
>
> The rx-error ( ierrors) seems to be counted by rte_eth_stats_get(uint8_t port_id, struct rte_eth_stats *stats) function in ~/dpdk/lib/librte_ether/rte_ethdev.c
>
> Then this rte_eth_stats_get() function calls (*dev->dev_ops->stats_get)(dev, stats); > > However, I can't find and trace the function (*dev->dev_ops->stats_get)().
>
> Would you tell me how can I find the function?
>
> Would you tell me why this receive errors occurs for what reasons?
>
>
> I tested it in two xeon computers with different OS.
>
> Fedora 22 (linux kernel version 4.2.3-200.fc22.x86_64, DPDK 2.1.0).
> Ubuntu 14.04.1 LTS(linux kernel version : 3.13.0-34-generic, DPDK 2.1.0).
>
> Both experiments show the same result with rx-errors.
>
> I will really appreciate if I can be given any advice and answers.
>
> Thank you very much.
>
> Sincerely Yours,
>
> Ick-Sung Choi.
>
Hello,
I don't know the reason for your errors, but I can probably help with the function.
I usually do this in two ways. One way is to identify the driver, and then look for instances of "struct eth_dev_ops" in it. For example, if you have an ixgbe/82599/etc, the driver is the ixgbe. Searching in the directory for it, you find this:
http://dpdk.org/browse/dpdk/tree/drivers/net/ixgbe/ixgbe_ethdev.c#n389
Another alternative is to attach to your running process with gdb, and print the dev struct. gdb will typically map the pointers contained therein to their symbolic names.
\x16º&Êæ§
©åébìb×¥ryÓ·muç8ßm5å\x17º¹ÏjØr¹©ájybºX§»\x18§µé\¢d^qè¯y×ë¢i k^"×¥r¦x{^Ê&×ݹçµ×òvd¢¸\x0f¢Ë_\x1c"¶\x11\x1213ât>;è?y\x0fWèׯvd¢¸\x16yݵ9ËvÓ^uç8Ûí6Ó@I4^qè¯y×ë¢gæ²h\x1aÓM)ízW(]6ç}¸Û¦ò~k&tÝù¢×¥r°ØDHÄÏÛS·m5çN¸ã´ïM\x17\x13^[K¢uÕr+¢sè®Ð\x15
prev parent reply other threads:[~2015-10-21 13:30 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-20 6:12 최익성
2015-10-20 13:50 ` Kyle Larose
2015-10-21 2:04 ` 최익성
2015-10-21 2:07 ` Choi, Sy Jong
2015-10-21 2:10 ` 최익성
2015-10-21 13:30 ` 최익성 [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3dac8affde3dc157dba7365e919718b@cweb28.nm.nhnsystem.com \
--to=pnk003@naver.com \
--cc=dev@dpdk.org \
--cc=eomereadig@gmail.com \
--cc=sy.jong.choi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).