Previously, l3fwd example app would fail to compile ([1]) if one would
put RTE_LOG_DP_LEVEL=RTE_LOG_DEBUG in config/rte_config.h and try to
compile dpdk; this path was not enabled via compiling debug build
(--buildtype=debug) alone, but needed the data path to be at debug
level.

[1] https://bugs.dpdk.org/show_bug.cgi?id=1318

Bugzilla ID: 1318
Fixes: 6de0ea50e9b9 ("examples/l3fwd: merge l3fwd-acl example")
Cc: [email protected]
Cc: [email protected]

Signed-off-by: Andrei-Niculae Petre <[email protected]>
---
 .mailmap                   |  1 +
 MAINTAINERS                |  2 ++
 examples/l3fwd/l3fwd_acl.c | 27 ++++++++++++++-------------
 examples/l3fwd/l3fwd_acl.h |  6 ------
 4 files changed, 17 insertions(+), 19 deletions(-)

diff --git a/.mailmap b/.mailmap
index cdaa471715..df999d00d8 100644
--- a/.mailmap
+++ b/.mailmap
@@ -106,6 +106,7 @@ Andre Muezerie <[email protected]> 
<[email protected]>
 Andre Richter <[email protected]>
 Andrea Arcangeli <[email protected]>
 Andrea Grandi <[email protected]>
+Andrei-Niculae Petre <[email protected]>
 Andrew Bailey <[email protected]>
 Andrew Boyer <[email protected]> <[email protected]>
 Andrew Harvey <[email protected]>
diff --git a/MAINTAINERS b/MAINTAINERS
index 5683b87e4a..501f312ba1 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1740,6 +1740,8 @@ F: lib/acl/
 F: doc/guides/prog_guide/packet_classif_access_ctrl.rst
 F: app/test-acl/
 F: app/test/test_acl.*
+F: examples/l3fwd/l3fwd_acl*
+F: doc/guides/sample_app_ug/l3_forward.rst
 
 EFD
 M: Byron Marohn <[email protected]>
diff --git a/examples/l3fwd/l3fwd_acl.c b/examples/l3fwd/l3fwd_acl.c
index a1275e18bc..8e24f1c599 100644
--- a/examples/l3fwd/l3fwd_acl.c
+++ b/examples/l3fwd/l3fwd_acl.c
@@ -235,6 +235,9 @@ enum {
 RTE_ACL_RULE_DEF(acl4_rule, RTE_DIM(ipv4_defs));
 RTE_ACL_RULE_DEF(acl6_rule, RTE_DIM(ipv6_defs));
 
+/* Must be included before acl_config definition to enable L3FWDACL_DEBUG */
+#include "l3fwd_acl.h"
+
 static struct {
        struct rte_acl_ctx *acx_ipv4[NB_SOCKETS];
        struct rte_acl_ctx *acx_ipv6[NB_SOCKETS];
@@ -251,8 +254,6 @@ static struct rte_acl_rule *acl_base_ipv4, *route_base_ipv4,
 static unsigned int acl_num_ipv4, route_num_ipv4,
                acl_num_ipv6, route_num_ipv6;
 
-#include "l3fwd_acl.h"
-
 #include "l3fwd_acl_scalar.h"
 
 /*
@@ -773,7 +774,7 @@ read_config_files_acl(void)
        }
 }
 
-void
+static void
 print_one_ipv4_rule(struct acl4_rule *rule, int extra)
 {
        char abuf[INET6_ADDRSTRLEN];
@@ -800,7 +801,7 @@ print_one_ipv4_rule(struct acl4_rule *rule, int extra)
                        rule->data.userdata);
 }
 
-void
+static void
 print_one_ipv6_rule(struct acl6_rule *rule, int extra)
 {
        unsigned char a, b, c, d;
@@ -855,17 +856,17 @@ print_one_ipv6_rule(struct acl6_rule *rule, int extra)
 
 #ifdef L3FWDACL_DEBUG
 static inline void
-dump_acl4_rule(struct rte_mbuf *m, uint32_t sig)
+dump_acl4_rule(const struct rte_mbuf *m, uint32_t sig)
 {
-       char abuf[INET6_ADDRSTRLEN];
+       char abuf[INET_ADDRSTRLEN];
        uint32_t offset = sig & ~ACL_DENY_SIGNATURE;
        struct rte_ipv4_hdr *ipv4_hdr =
                rte_pktmbuf_mtod_offset(m, struct rte_ipv4_hdr *,
                                        sizeof(struct rte_ether_hdr));
 
-       printf("Packet Src:%s ", inet_ntop(AF_INET, ipv4_hdr->src_addr,
+       printf("Packet Src:%s ", inet_ntop(AF_INET, &ipv4_hdr->src_addr,
                abuf, sizeof(abuf)));
-       printf("Dst:%s ", inet_ntop(AF_INET, ipv4_hdr->dst_addr,
+       printf("Dst:%s ", inet_ntop(AF_INET, &ipv4_hdr->dst_addr,
                abuf, sizeof(abuf)));
 
        printf("Src port:%hu,Dst port:%hu ",
@@ -879,7 +880,7 @@ dump_acl4_rule(struct rte_mbuf *m, uint32_t sig)
 }
 
 static inline void
-dump_acl6_rule(struct rte_mbuf *m, uint32_t sig)
+dump_acl6_rule(const struct rte_mbuf *m, uint32_t sig)
 {
        char abuf[INET6_ADDRSTRLEN];
        uint32_t offset = sig & ~ACL_DENY_SIGNATURE;
@@ -888,10 +889,10 @@ dump_acl6_rule(struct rte_mbuf *m, uint32_t sig)
                                        sizeof(struct rte_ether_hdr));
 
        printf("Packet Src");
-       printf("%s", inet_ntop(AF_INET6, ipv6_hdr->src_addr,
+       printf("%s", inet_ntop(AF_INET6, &ipv6_hdr->src_addr,
                abuf, sizeof(abuf)));
        printf("\nDst");
-       printf("%s", inet_ntop(AF_INET6, ipv6_hdr->dst_addr,
+       printf("%s", inet_ntop(AF_INET6, &ipv6_hdr->dst_addr,
                abuf, sizeof(abuf)));
 
        printf("\nSrc port:%hu,Dst port:%hu ",
@@ -984,8 +985,8 @@ dump_denied_pkt(const struct rte_mbuf *pkt, uint32_t res)
        if ((res & ACL_DENY_SIGNATURE) != 0) {
                if (RTE_ETH_IS_IPV4_HDR(pkt->packet_type))
                        dump_acl4_rule(pkt, res);
-               else if (RTE_ETH_IS_IPV6_HDR(pkt[i]->packet_type))
-                       dump_acl6_rule(pkt[i], res[i]);
+               else if (RTE_ETH_IS_IPV6_HDR(pkt->packet_type))
+                       dump_acl6_rule(pkt, res);
        }
 #else
        RTE_SET_USED(pkt);
diff --git a/examples/l3fwd/l3fwd_acl.h b/examples/l3fwd/l3fwd_acl.h
index 05af62fe10..a34a08eb7f 100644
--- a/examples/l3fwd/l3fwd_acl.h
+++ b/examples/l3fwd/l3fwd_acl.h
@@ -48,10 +48,4 @@
  */
 #define FWD_PORT_SHIFT 1
 
-void
-print_one_ipv4_rule(struct acl4_rule *rule, int extra);
-
-void
-print_one_ipv6_rule(struct acl6_rule *rule, int extra);
-
 #endif /* L3FWD_ACL_H */
-- 
2.39.5

Reply via email to