[PATCH] examples/l3fwd: Fix core dump with multiple socket
Kaiwen Deng
kaiwenx.deng at intel.com
Wed Jul 3 09:50:37 CEST 2024
Setting acl will clear the acl config of other sockets, which
will result in core dump.
This commit will no longer clear the acl config when setting acl.
Fixes: 6de0ea50e9b9 ("examples/l3fwd: merge l3fwd-acl example")
Cc: stable at dpdk.org
Signed-off-by: Kaiwen Deng <kaiwenx.deng at intel.com>
---
examples/l3fwd/l3fwd_acl.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/examples/l3fwd/l3fwd_acl.c b/examples/l3fwd/l3fwd_acl.c
index 401692bcec..c8958f59fc 100644
--- a/examples/l3fwd/l3fwd_acl.c
+++ b/examples/l3fwd/l3fwd_acl.c
@@ -962,8 +962,6 @@ setup_acl(const int socket_id)
acl_log("IPv6 ACL entries %u:\n", acl_num_ipv6);
dump_ipv6_rules((struct acl6_rule *)acl_base_ipv6, acl_num_ipv6, 1);
- memset(&acl_config, 0, sizeof(acl_config));
-
/* Check sockets a context should be created on */
if (socket_id >= NB_SOCKETS) {
acl_log("Socket %d is out "
@@ -973,6 +971,9 @@ setup_acl(const int socket_id)
return;
}
+ rte_acl_free(acl_config.acx_ipv4[socket_id]);
+ rte_acl_free(acl_config.acx_ipv6[socket_id]);
+
acl_config.acx_ipv4[socket_id] = app_acl_init(route_base_ipv4,
acl_base_ipv4, route_num_ipv4, acl_num_ipv4,
0, socket_id);
--
2.34.1
More information about the dev
mailing list