From: Olivier Matz <olivier.matz@6wind.com>
To: "Ding, HengX" <hengx.ding@intel.com>
Cc: "Xu, Qian Q" <qian.q.xu@intel.com>, "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] run ip_fragmentation with cores in different socket will cause core dump
Date: Mon, 13 Jun 2016 10:46:12 +0200 [thread overview]
Message-ID: <575E72D4.7010104@6wind.com> (raw)
In-Reply-To: <6EBE0505FB6FBE47AB60080228528452519690E7@CDSMSX101.ccr.corp.intel.com>
Hi,
On 06/13/2016 09:41 AM, Ding, HengX wrote:
> The following command will cause ip_fragmentation app fail:
> examples/ip_fragmentation/build/ip_fragmentation -c 0x40002 -n 4 -- -p 0x3 -q 2
> while setting core mask to 0x2 or 0x40000 will not cause this issue.
>
> error message is shown below:
>
> EAL: Not managed by a supported kernel driver, skipped
> IP_FRAG: Creating direct mempool on socket 0
> IP_FRAG: Creating indirect mempool on socket 0
> IP_FRAG: Creating LPM table on socket 0
> IP_FRAG: Creating LPM6 table on socket 0
> IP_FRAG: Creating direct mempool on socket 1
> IP_FRAG: Creating indirect mempool on socket 1
> IP_FRAG: Creating LPM table on socket 1
> IP_FRAG: Creating LPM6 table on socket 1
> IP_FRAG: Cannot create LPM table
> PANIC in main():
> Cannot initialize memory structures!
> 5: [examples/ip_fragmentation/build/ip_fragmentation() [0x42df85]]
> 4: [/lib64/libc.so.6(__libc_start_main+0xf5) [0x3a8a421d65]]
> 3: [examples/ip_fragmentation/build/ip_fragmentation() [0x42d163]]
> 2: [examples/ip_fragmentation/build/ip_fragmentation(__rte_panic+0xc9) [0x426c0c]]
> 1: [examples/ip_fragmentation/build/ip_fragmentation(rte_dump_stack+0x1a) [0x4980aa]]
> Aborted (core dumped)
>
> And the bisect result:
>
> f82f705b635d31a63446a16bc4526dbebf293c5a is the first bad commit
> commit f82f705b635d31a63446a16bc4526dbebf293c5a
> Author: Olivier Matz <olivier.matz@6wind.com>
> Date: Wed Apr 6 15:27:58 2016 +0200
>
> lpm: fix allocation of an existing object
>
> Change rte_lpm*_create() functions to return NULL and set rte_errno to
> EEXIST when the object name already exists. This is the behavior
> described in the API documentation in the header file.
>
> These functions were returning a pointer to the existing object in that
> case, but it is a problem as the caller did not know if the object had
> to be freed or not.
>
> Doing this change also makes the lpm API more consistent with the other
> APIs (mempool, rings, ...).
>
> Fixes: 916e4f4f4e ("memory: fix for multi process support")
>
> Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
>From what I see, the ip_fragmentation example does not check if
a lpm table already exists before creating it. I'll send a patch
to fix this, and also check if other applications examples are
impacted.
Thanks for reporting.
Regards,
Olivier
next prev parent reply other threads:[~2016-06-13 8:46 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-13 7:41 Ding, HengX
2016-06-13 8:46 ` Olivier Matz [this message]
2016-06-13 9:43 ` [dpdk-dev] [PATCH] examples: fix duplicated lpm6 name Olivier Matz
2016-06-15 14:30 ` Thomas Monjalon
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=575E72D4.7010104@6wind.com \
--to=olivier.matz@6wind.com \
--cc=dev@dpdk.org \
--cc=hengx.ding@intel.com \
--cc=qian.q.xu@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).