DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev]  When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
@ 2015-10-20  6:12 최익성
  2015-10-20 13:50 ` Kyle Larose
  0 siblings, 1 reply; 6+ messages in thread
From: 최익성 @ 2015-10-20  6:12 UTC (permalink / raw)
  To: dev

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.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
  2015-10-20  6:12 [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error 최익성
@ 2015-10-20 13:50 ` Kyle Larose
  2015-10-21  2:04   ` 최익성
  0 siblings, 1 reply; 6+ messages in thread
From: Kyle Larose @ 2015-10-20 13:50 UTC (permalink / raw)
  To: 최익성; +Cc: dev

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-&gt;dev_ops-&gt;stats_get)(dev, stats);
>
> However, I can't find and trace the function (*dev-&gt;dev_ops-&gt;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.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
  2015-10-20 13:50 ` Kyle Larose
@ 2015-10-21  2:04   ` 최익성
  2015-10-21  2:07     ` Choi, Sy Jong
  0 siblings, 1 reply; 6+ messages in thread
From: 최익성 @ 2015-10-21  2:04 UTC (permalink / raw)
  To: Kyle Larose; +Cc: dev

 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 &amp;&amp; echo "OK"
        sudo ${RTE_SDK}/tools/dpdk_nic_bind.py -b ixgbe 0000:02:00.1 &amp;&amp; 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"&lt;eomereadig@gmail.com&gt; 
To: "최익성"&lt;pnk003@naver.com&gt;; 
Cc: &lt;dev@dpdk.org&gt;; 
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, 최익성 &lt;pnk003@naver.com&gt; wrote:
&gt; Dear DPDK experts.
&gt;
&gt; Thank you very much for your best great efforts and precious answers.
&gt;
&gt;
&gt; When I run test-pmd, most of received packets are RX-error.
&gt;
&gt; The computer has two 10GbE ports Intel NIC and the two ports are loop-backed each other.
&gt;
&gt; The result shows that the loop-backed packets have rx-error occured from ethernet device port.
&gt;
&gt; 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
&gt;
&gt; Then this rte_eth_stats_get() function calls (*dev-&gt;dev_ops-&gt;stats_get)(dev, stats);
&gt;
&gt; However, I can't find and trace the function (*dev-&gt;dev_ops-&gt;stats_get)().
&gt;
&gt; Would you tell me how can I find the function?
&gt;
&gt; Would you tell me why this receive errors occurs for what reasons?
&gt;
&gt;
&gt; I tested it in two xeon computers with different OS.
&gt;
&gt;    Fedora 22 (linux kernel version 4.2.3-200.fc22.x86_64, DPDK 2.1.0).
&gt;    Ubuntu 14.04.1 LTS(linux kernel version : 3.13.0-34-generic, DPDK 2.1.0).
&gt;
&gt; Both experiments show the same result with rx-errors.
&gt;
&gt; I will really appreciate if I can be given any advice and answers.
&gt;
&gt; Thank you very much.
&gt;
&gt; Sincerely Yours,
&gt;
&gt; Ick-Sung Choi.
&gt;

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.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
  2015-10-21  2:04   ` 최익성
@ 2015-10-21  2:07     ` Choi, Sy Jong
  2015-10-21  2:10       ` 최익성
  2015-10-21 13:30       ` 최익성
  0 siblings, 2 replies; 6+ messages in thread
From: Choi, Sy Jong @ 2015-10-21  2:07 UTC (permalink / raw)
  To: 최익성, Kyle Larose; +Cc: dev

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 &amp;&amp; echo "OK"
        sudo ${RTE_SDK}/tools/dpdk_nic_bind.py -b ixgbe 0000:02:00.1 &amp;&amp; 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"&lt;eomereadig@gmail.com&gt;
To: "최익성"&lt;pnk003@naver.com&gt;;
Cc: &lt;dev@dpdk.org&gt;;
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, 최익성 &lt;pnk003@naver.com&gt; wrote:
&gt; Dear DPDK experts.
&gt;
&gt; Thank you very much for your best great efforts and precious answers.
&gt;
&gt;
&gt; When I run test-pmd, most of received packets are RX-error.
&gt;
&gt; The computer has two 10GbE ports Intel NIC and the two ports are loop-backed each other.
&gt;
&gt; The result shows that the loop-backed packets have rx-error occured from ethernet device port.
&gt;
&gt; 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
&gt;
&gt; Then this rte_eth_stats_get() function calls (*dev-&gt;dev_ops-&gt;stats_get)(dev, stats); &gt; &gt; However, I can't find and trace the function (*dev-&gt;dev_ops-&gt;stats_get)().
&gt;
&gt; Would you tell me how can I find the function?
&gt;
&gt; Would you tell me why this receive errors occurs for what reasons?
&gt;
&gt;
&gt; I tested it in two xeon computers with different OS.
&gt;
&gt;    Fedora 22 (linux kernel version 4.2.3-200.fc22.x86_64, DPDK 2.1.0).
&gt;    Ubuntu 14.04.1 LTS(linux kernel version : 3.13.0-34-generic, DPDK 2.1.0).
&gt;
&gt; Both experiments show the same result with rx-errors.
&gt;
&gt; I will really appreciate if I can be given any advice and answers.
&gt;
&gt; Thank you very much.
&gt;
&gt; Sincerely Yours,
&gt;
&gt; Ick-Sung Choi.
&gt;

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.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
  2015-10-21  2:07     ` Choi, Sy Jong
@ 2015-10-21  2:10       ` 최익성
  2015-10-21 13:30       ` 최익성
  1 sibling, 0 replies; 6+ messages in thread
From: 최익성 @ 2015-10-21  2:10 UTC (permalink / raw)
  To: ChoiSy Jong, Kyle Larose; +Cc: dev

 Dear Choi, Sy Jong.
 
Thank you very much for your precious answers.
 
Sincerely Yours, 
 
Ick-Sung Choi.
 
-----Original Message-----
From: "Choi, Sy Jong"&lt;sy.jong.choi@intel.com&gt; 
To: "최익성"&lt;pnk003@naver.com&gt;; "Kyle Larose"&lt;eomereadig@gmail.com&gt;; 
Cc: "dev@dpdk.org"&lt;dev@dpdk.org&gt;; 
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 &amp;&amp; echo "OK"

        sudo ${RTE_SDK}/tools/dpdk_nic_bind.py -b ixgbe 0000:02:00.1 &amp;&amp; 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"&lt;eomereadig@gmail.com&gt;

To: "최익성"&lt;pnk003@naver.com&gt;;

Cc: &lt;dev@dpdk.org&gt;;

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, 최익성 &lt;pnk003@naver.com&gt; wrote:

&gt; Dear DPDK experts.

&gt;

&gt; Thank you very much for your best great efforts and precious answers.

&gt;

&gt;

&gt; When I run test-pmd, most of received packets are RX-error.

&gt;

&gt; The computer has two 10GbE ports Intel NIC and the two ports are loop-backed each other.

&gt;

&gt; The result shows that the loop-backed packets have rx-error occured from ethernet device port.

&gt;

&gt; 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

&gt;

&gt; Then this rte_eth_stats_get() function calls (*dev-&gt;dev_ops-&gt;stats_get)(dev, stats); &gt; &gt; However, I can't find and trace the function (*dev-&gt;dev_ops-&gt;stats_get)().

&gt;

&gt; Would you tell me how can I find the function?

&gt;

&gt; Would you tell me why this receive errors occurs for what reasons?

&gt;

&gt;

&gt; I tested it in two xeon computers with different OS.

&gt;

&gt;    Fedora 22 (linux kernel version 4.2.3-200.fc22.x86_64, DPDK 2.1.0).

&gt;    Ubuntu 14.04.1 LTS(linux kernel version : 3.13.0-34-generic, DPDK 2.1.0).

&gt;

&gt; Both experiments show the same result with rx-errors.

&gt;

&gt; I will really appreciate if I can be given any advice and answers.

&gt;

&gt; Thank you very much.

&gt;

&gt; Sincerely Yours,

&gt;

&gt; Ick-Sung Choi.

&gt;



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.




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error.
  2015-10-21  2:07     ` Choi, Sy Jong
  2015-10-21  2:10       ` 최익성
@ 2015-10-21 13:30       ` 최익성
  1 sibling, 0 replies; 6+ messages in thread
From: 최익성 @ 2015-10-21 13:30 UTC (permalink / raw)
  To: ChoiSy Jong, Kyle Larose; +Cc: dev

[-- 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"&lt;sy.jong.choi@intel.com&gt; 
To: "최익성"&lt;pnk003@naver.com&gt;; "Kyle Larose"&lt;eomereadig@gmail.com&gt;; 
Cc: "dev@dpdk.org"&lt;dev@dpdk.org&gt;; 
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 &amp;&amp; echo "OK"

        sudo ${RTE_SDK}/tools/dpdk_nic_bind.py -b ixgbe 0000:02:00.1 &amp;&amp; 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"&lt;eomereadig@gmail.com&gt;

To: "최익성"&lt;pnk003@naver.com&gt;;

Cc: &lt;dev@dpdk.org&gt;;

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, 최익성 &lt;pnk003@naver.com&gt; wrote:

&gt; Dear DPDK experts.

&gt;

&gt; Thank you very much for your best great efforts and precious answers.

&gt;

&gt;

&gt; When I run test-pmd, most of received packets are RX-error.

&gt;

&gt; The computer has two 10GbE ports Intel NIC and the two ports are loop-backed each other.

&gt;

&gt; The result shows that the loop-backed packets have rx-error occured from ethernet device port.

&gt;

&gt; 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

&gt;

&gt; Then this rte_eth_stats_get() function calls (*dev-&gt;dev_ops-&gt;stats_get)(dev, stats); &gt; &gt; However, I can't find and trace the function (*dev-&gt;dev_ops-&gt;stats_get)().

&gt;

&gt; Would you tell me how can I find the function?

&gt;

&gt; Would you tell me why this receive errors occurs for what reasons?

&gt;

&gt;

&gt; I tested it in two xeon computers with different OS.

&gt;

&gt;    Fedora 22 (linux kernel version 4.2.3-200.fc22.x86_64, DPDK 2.1.0).

&gt;    Ubuntu 14.04.1 LTS(linux kernel version : 3.13.0-34-generic, DPDK 2.1.0).

&gt;

&gt; Both experiments show the same result with rx-errors.

&gt;

&gt; I will really appreciate if I can be given any advice and answers.

&gt;

&gt; Thank you very much.

&gt;

&gt; Sincerely Yours,

&gt;

&gt; Ick-Sung Choi.

&gt;



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ž×¥r‰–yÓœ·muçŽ8ßm5å\x17­º¹ÏjØr¹©ájybºX§»\x18§µé\¢d^qè¯y×ë¢i k^"ž×¥r‰¦­xŠ{^•Ê&×ݹ睵זòv—d¢¸\x0f¢Ë_‹\x1c"¶\x11\x1213ât>;è?y\x0fWè­×¯v—d¢¸\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

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-10-21 13:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-20  6:12 [dpdk-dev] When I run test-pmd, most of received packets(loop-backed packet) have RX-error 최익성
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 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).