* rte_eth_dev_stop crashing consistently
@ 2025-02-17 13:06 Lokesh Chakka
2025-02-17 15:58 ` Stephen Hemminger
0 siblings, 1 reply; 4+ messages in thread
From: Lokesh Chakka @ 2025-02-17 13:06 UTC (permalink / raw)
To: users
[-- Attachment #1: Type: text/plain, Size: 358 bytes --]
Hello,
I've written a few pieces of code for sending and receiving packets.
Here is the link for the same.
If I try running only pmd_tx.c or only pmd_rx.c, I'm not seeing any crashes.
But if the same code is copied into dpdk_tx_rx.c, I'm seeing a consistent
crash.
Can someone help me understand what I'm doing wrong?
Thanks & Regards
--
Lokesh Chakka.
[-- Attachment #2: Type: text/html, Size: 756 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: rte_eth_dev_stop crashing consistently
2025-02-17 13:06 rte_eth_dev_stop crashing consistently Lokesh Chakka
@ 2025-02-17 15:58 ` Stephen Hemminger
2025-02-18 4:18 ` Lokesh Chakka
0 siblings, 1 reply; 4+ messages in thread
From: Stephen Hemminger @ 2025-02-17 15:58 UTC (permalink / raw)
To: Lokesh Chakka; +Cc: users
On Mon, 17 Feb 2025 18:36:07 +0530
Lokesh Chakka <lvenkatakumarchakka@gmail.com> wrote:
> Hello,
>
> I've written a few pieces of code for sending and receiving packets.
> Here is the link for the same.
>
> If I try running only pmd_tx.c or only pmd_rx.c, I'm not seeing any crashes.
> But if the same code is copied into dpdk_tx_rx.c, I'm seeing a consistent
> crash.
>
> Can someone help me understand what I'm doing wrong?
>
>
> Thanks & Regards
> --
> Lokesh Chakka.
This is all your own code, so it is up to you to debug it.
Did you try running in debugger (gdb) and/or enabling some of the debug
flags in the DPDK build. The debug flags will cause more of the code paths
to validate arguments.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: rte_eth_dev_stop crashing consistently
2025-02-17 15:58 ` Stephen Hemminger
@ 2025-02-18 4:18 ` Lokesh Chakka
2025-02-19 13:39 ` Lokesh Chakka
0 siblings, 1 reply; 4+ messages in thread
From: Lokesh Chakka @ 2025-02-18 4:18 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: users
[-- Attachment #1: Type: text/plain, Size: 2246 bytes --]
hi,
I've done the build with "meson setup build --buildtype=debug".
I'm seeing a lot function names if I do "file build/lib/librte_eal.so"
version I'm working on is dpdk-stable-24.11.1
Inside, the code I've set rte_log_set_global_level(RTE_LOG_DEBUG);
while compiling the code, I've included "-lrte_eal -lrte_log -lrte_mbuf
-lrte_ethdev -lrte_me mpool -mssse3" libraries.
Still I'm seeing only generic EAL Logs.
while executing, I'am using the command "sudo pmd_tx_rx -l 0-3 -n 4
--log-level=8"
still I'am always seeing only the following lines :
==========================================================
EAL: Detected CPU lcores: 16
EAL: Detected NUMA nodes: 1
EAL: Detected shared linkage of DPDK
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'VA'
EAL: VFIO support initialized
EAL: Using IOMMU type 1 (Type 1)
ICE_INIT: ice_load_pkg_type(): Active package is: 1.3.39.1, ICE OS Default
Package (single VLAN mode)
ICE_INIT: ice_load_pkg_type(): Active package is: 1.3.39.1, ICE OS Default
Package (single VLAN mode)
tx_all_threads_function 188 pkt size: 1500
ICE_DRIVER: ice_set_rx_function(): Using AVX2 Vector Rx (port 0).
==========================================================
could you please let me know if any more debug flags to be provided....
Thanks & Regards
--
Lokesh Chakka.
On Mon, Feb 17, 2025 at 9:28 PM Stephen Hemminger <
stephen@networkplumber.org> wrote:
> On Mon, 17 Feb 2025 18:36:07 +0530
> Lokesh Chakka <lvenkatakumarchakka@gmail.com> wrote:
>
> > Hello,
> >
> > I've written a few pieces of code for sending and receiving packets.
> > Here is the link for the same.
> >
> > If I try running only pmd_tx.c or only pmd_rx.c, I'm not seeing any
> crashes.
> > But if the same code is copied into dpdk_tx_rx.c, I'm seeing a consistent
> > crash.
> >
> > Can someone help me understand what I'm doing wrong?
> >
> >
> > Thanks & Regards
> > --
> > Lokesh Chakka.
>
> This is all your own code, so it is up to you to debug it.
> Did you try running in debugger (gdb) and/or enabling some of the debug
> flags in the DPDK build. The debug flags will cause more of the code paths
> to validate arguments.
>
[-- Attachment #2: Type: text/html, Size: 3288 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: rte_eth_dev_stop crashing consistently
2025-02-18 4:18 ` Lokesh Chakka
@ 2025-02-19 13:39 ` Lokesh Chakka
0 siblings, 0 replies; 4+ messages in thread
From: Lokesh Chakka @ 2025-02-19 13:39 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: users
[-- Attachment #1: Type: text/plain, Size: 3068 bytes --]
Hi Stephen,
please refer to
https://bitbucket.org/chakkadotlokesh/learning_dpdk/src/main/pmd_tx_rx.c
at line number 39, ref count of all the mbufs are 2
after rte_eth_tx_burst, pkts_sent packets ref count is supposed to be 1 and
rest all should be 2.
hence I'm updating by 1.
But the observation is that ref count is growing even beyond 100 for many
packets.(line number 47)
Because ref count is huge, memory is still not released( after line 255,
256). Hence rte_eth_dev_stop is crashing.
Could you please help me understand how to handle this situation.
Thanks & Regards
--
Lokesh Chakka.
On Tue, Feb 18, 2025 at 9:48 AM Lokesh Chakka <lvenkatakumarchakka@gmail.com>
wrote:
> hi,
>
> I've done the build with "meson setup build --buildtype=debug".
> I'm seeing a lot function names if I do "file build/lib/librte_eal.so"
> version I'm working on is dpdk-stable-24.11.1
>
> Inside, the code I've set rte_log_set_global_level(RTE_LOG_DEBUG);
> while compiling the code, I've included "-lrte_eal -lrte_log -lrte_mbuf
> -lrte_ethdev -lrte_me mpool -mssse3" libraries.
> Still I'm seeing only generic EAL Logs.
>
> while executing, I'am using the command "sudo pmd_tx_rx -l 0-3 -n 4
> --log-level=8"
>
> still I'am always seeing only the following lines :
>
> ==========================================================
> EAL: Detected CPU lcores: 16
> EAL: Detected NUMA nodes: 1
> EAL: Detected shared linkage of DPDK
> EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
> EAL: Selected IOVA mode 'VA'
> EAL: VFIO support initialized
> EAL: Using IOMMU type 1 (Type 1)
> ICE_INIT: ice_load_pkg_type(): Active package is: 1.3.39.1, ICE OS Default
> Package (single VLAN mode)
> ICE_INIT: ice_load_pkg_type(): Active package is: 1.3.39.1, ICE OS Default
> Package (single VLAN mode)
> tx_all_threads_function 188 pkt size: 1500
> ICE_DRIVER: ice_set_rx_function(): Using AVX2 Vector Rx (port 0).
> ==========================================================
>
> could you please let me know if any more debug flags to be provided....
>
>
> Thanks & Regards
> --
> Lokesh Chakka.
>
>
> On Mon, Feb 17, 2025 at 9:28 PM Stephen Hemminger <
> stephen@networkplumber.org> wrote:
>
>> On Mon, 17 Feb 2025 18:36:07 +0530
>> Lokesh Chakka <lvenkatakumarchakka@gmail.com> wrote:
>>
>> > Hello,
>> >
>> > I've written a few pieces of code for sending and receiving packets.
>> > Here is the link for the same.
>> >
>> > If I try running only pmd_tx.c or only pmd_rx.c, I'm not seeing any
>> crashes.
>> > But if the same code is copied into dpdk_tx_rx.c, I'm seeing a
>> consistent
>> > crash.
>> >
>> > Can someone help me understand what I'm doing wrong?
>> >
>> >
>> > Thanks & Regards
>> > --
>> > Lokesh Chakka.
>>
>> This is all your own code, so it is up to you to debug it.
>> Did you try running in debugger (gdb) and/or enabling some of the debug
>> flags in the DPDK build. The debug flags will cause more of the code paths
>> to validate arguments.
>>
>
[-- Attachment #2: Type: text/html, Size: 4809 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-02-19 13:40 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-02-17 13:06 rte_eth_dev_stop crashing consistently Lokesh Chakka
2025-02-17 15:58 ` Stephen Hemminger
2025-02-18 4:18 ` Lokesh Chakka
2025-02-19 13:39 ` Lokesh Chakka
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).