DPDK patches and discussions
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [DPDK/examples Bug 1502] [dpdk-24.07] l3fwdacl/l3fwdacl_acl_rule: core dump when receiving packets
Date: Fri, 26 Jul 2024 10:32:42 +0000	[thread overview]
Message-ID: <bug-1502-3@http.bugs.dpdk.org/> (raw)

[-- Attachment #1: Type: text/plain, Size: 3606 bytes --]

https://bugs.dpdk.org/show_bug.cgi?id=1502

            Bug ID: 1502
           Summary: [dpdk-24.07] l3fwdacl/l3fwdacl_acl_rule: core dump
                    when receiving packets
           Product: DPDK
           Version: 24.07
          Hardware: x86
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: examples
          Assignee: dev@dpdk.org
          Reporter: songx.jiale@intel.com
  Target Milestone: ---

[Environment]
DPDK version: 
dpdk24.07-rc3:82c47f005b9a0a1e3a649664b7713443d18abe43
Other software versions: N/A.
OS: Anolis OS 8.8/5.10.134-13.an8.x86_64
Compiler: gcc version 8.5.0 20210514
Hardware platform: Intel(R) Xeon(R) Gold 6139 CPU @ 2.30GHz
NIC hardware: Intel Corporation Ethernet Controller E810-C for SFP [8086:1593]
(rev 01)
NIC driver: ice-1.14.11
NIC firmware: 4.50 0x8001d8b6 1.3597.0

[Test Setup]
1.compile dpdk
rm -rf x86_64-native-linuxapp-gcc
CC=gcc meson -Denable_kmods=True -Dlibdir=lib --default-library=static
-Db_sanitize=address -Dexamples=l3fwd x86_64-native-linuxapp-gcc
ninja -C x86_64-native-linuxapp-gcc  
2. bind pf to vfio-pci 
./usertools/dpdk-devbind.py -b vfio-pci 18:00.0 18:00.1

3.prepare acl rules 
echo '' > /root/rule_ipv4.db
echo 'R0.0.0.0/0 0.0.0.0/0 0 : 65535 0 : 65535 0x00/0x00 1' >>
/root/rule_ipv4.db
echo '' > /root/rule_ipv6.db
echo 'R0:0:0:0:0:0:0:0/0 0:0:0:0:0:0:0:0/0 0 : 65535 0 : 65535 0x00/0x00 1' >>
/root/rule_ipv6.db
echo '' > /root/rule_ipv4.db
echo @200.10.0.1/32 0.0.0.0/0 0 : 65535 0 : 65535 0x00/0x00  >>
/root/rule_ipv4.db
echo R0.0.0.0/0 0.0.0.0/0 0 : 65535 0 : 65535 0x00/0x00 1 >> /root/rule_ipv4.db

4.launch dpdk-l3fwd 
x86_64-native-linuxapp-gcc/examples/dpdk-l3fwd -l 1-4 -n 4 -a 0000:18:00.0 -a
0000:18:00.1 --force-max-simd-bitwidth=0 -- -p 0x3 --lookup acl
--config="(0,0,2),(1,0,3)" --rule_ipv4="/root/rule_ipv4.db"
--rule_ipv6="/root/rule_ipv6.db" --parse-ptype  
5.Send packets
sendp([Ether(dst="{rx_port_mac}")/IP(src="200.10.0.1",dst="100.10.0.1")/UDP(sport=11,dport=101)],iface="ens7",count=1,inter=0,verbose=False)

[Show the output from the previous commands.]

Segmentation fault

[Expected Result]

The application can receive and send packages normally.

[Regression]
Is this issue a regression: (Y/N)Y

commit aa7c6077c19bd39b48ac17cd844b91f0dd03319f
Author: Konstantin Ananyev <konstantin.ananyev@huawei.com>
Date:   Thu May 2 16:28:16 2024 +0100

    examples/l3fwd: avoid packets reorder in ACL mode

    In ACL mode l3fwd first do classify() and send() for ipv4 packets,
    then the same procedure for ipv6.
    That might cause packets reordering within one ingress queue.
    Probably not a big deal, as order within each flow are still preserved,
    but better to be avoided anyway.
    Specially considering that in other modes (lpm, fib, em)
    l3fwd does preserve the order no matter of packet's IP version.
    This patch aims to make ACL mode to behave in the same manner
    and preserve packet's order within the same ingress queue.
    Also these changes allow ACL mode to use common
    (and hopefully better optimized) send_packets_multi() function at Tx path.

    Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com>

 examples/l3fwd/l3fwd_acl.c        | 125 ++++++++++++++++++++++++--------------
 examples/l3fwd/l3fwd_acl_scalar.h |  71 ++++++++++++----------
 2 files changed, 118 insertions, 78 deletions

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #2: Type: text/html, Size: 5727 bytes --]

                 reply	other threads:[~2024-07-26 10:38 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=bug-1502-3@http.bugs.dpdk.org/ \
    --to=bugzilla@dpdk.org \
    --cc=dev@dpdk.org \
    /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).