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: [email protected]
Signed-off-by: Kaiwen Deng <[email protected]>
---
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