acl: introduce config parameter for performance/space trade-off
[dpdk.git] / examples / l3fwd-acl / main.c
index 4487c95..f1f7601 100644 (file)
@@ -1178,8 +1178,9 @@ setup_acl(struct rte_acl_rule *route_base,
                        rte_exit(EXIT_FAILURE, "add rules failed\n");
 
        /* Perform builds */
-       acl_build_param.num_categories = DEFAULT_MAX_CATEGORIES;
+       memset(&acl_build_param, 0, sizeof(acl_build_param));
 
+       acl_build_param.num_categories = DEFAULT_MAX_CATEGORIES;
        acl_build_param.num_fields = dim;
        memcpy(&acl_build_param.defs, ipv6 ? ipv6_defs : ipv4_defs,
                ipv6 ? sizeof(ipv6_defs) : sizeof(ipv4_defs));
@@ -1247,6 +1248,10 @@ app_acl_init(void)
                                acl_log("Socket %d of lcore %u is out "
                                        "of range %d\n",
                                        socketid, lcore_id, NB_SOCKETS);
+                               free(route_base_ipv4);
+                               free(route_base_ipv6);
+                               free(acl_base_ipv4);
+                               free(acl_base_ipv6);
                                return -1;
                        }