<div> </div><div> </div><blockquote><p>Get rid of RTE_LOGTYPE_ACL and RTE_LOGTYPE_MALLOC.<br />For ACL library use a dynamic type.<br />The one message using RTE_LOGTYPE_MALLOC should have been<br />under the ACL logtype anyway.<br /><br />The test code should not have been using fixed log type<br />so just change that to stderr.<br /><br />Signed-off-by: Stephen Hemminger <<a href="mailto:stephen@networkplumber.org" rel="noopener noreferrer">stephen@networkplumber.org</a>><br />---<br /> app/test/test_acl.c | 3 ++-<br /> lib/acl/acl_bld.c | 1 +<br /> lib/acl/acl_gen.c | 1 +<br /> lib/acl/acl_log.h | 4 ++++<br /> lib/acl/rte_acl.c | 4 ++++<br /> lib/acl/tb_mem.c | 3 ++-<br /> lib/eal/common/eal_common_log.c | 2 --<br /> lib/eal/include/rte_log.h | 4 ++--<br /> 8 files changed, 16 insertions(+), 6 deletions(-)<br /> create mode 100644 lib/acl/acl_log.h<br /><br />diff --git a/app/test/test_acl.c b/app/test/test_acl.c<br />index 623f34682e69..75588978a720 100644<br />--- a/app/test/test_acl.c<br />+++ b/app/test/test_acl.c<br />@@ -154,7 +154,8 @@ rte_acl_ipv4vlan_add_rules(struct rte_acl_ctx *ctx,<br />         for (i = 0; i != num; i++) {<!-- --><br />                 rc = acl_ipv4vlan_check_rule(rules + i);<br />                 if (rc != 0) {<!-- --><br />- RTE_LOG(ERR, ACL, "%s: rule #%u is invalid\n",<br />+ fprintf(stderr,<br />+ "%s: rule #%u is invalid\n",<br />                                 __func__, i + 1);<br />                         return rc;<br />                 }<br />diff --git a/lib/acl/acl_bld.c b/lib/acl/acl_bld.c<br />index 2816632803bd..f38e6478315f 100644<br />--- a/lib/acl/acl_bld.c<br />+++ b/lib/acl/acl_bld.c<br />@@ -5,6 +5,7 @@<br /> #include <rte_acl.h><br /> #include "tb_mem.h"<br /> #include "acl.h"<br />+#include "acl_log.h"<br /> <br /> #define ACL_POOL_ALIGN 8<br /> #define ACL_POOL_ALLOC_MIN 0x800000<br />diff --git a/lib/acl/acl_gen.c b/lib/acl/acl_gen.c<br />index e759a2ca1598..54ec485d0c58 100644<br />--- a/lib/acl/acl_gen.c<br />+++ b/lib/acl/acl_gen.c<br />@@ -4,6 +4,7 @@<br /> <br /> #include <rte_acl.h><br /> #include "acl.h"<br />+#include "acl_log.h"<br /> <br /> #define QRANGE_MIN ((uint8_t)INT8_MIN)<br /> <br />diff --git a/lib/acl/acl_log.h b/lib/acl/acl_log.h<br />new file mode 100644<br />index 000000000000..b55573cbe207<br />--- /dev/null<br />+++ b/lib/acl/acl_log.h<br />@@ -0,0 +1,4 @@<br />+/* SPDX-License-Identifier: BSD-3-Clause */<br />+<br />+extern int acl_logtype;<br />+#define RTE_LOGTYPE_ACL acl_logtype<br />diff --git a/lib/acl/rte_acl.c b/lib/acl/rte_acl.c<br />index a61c3ba188da..a29decb1f6ca 100644<br />--- a/lib/acl/rte_acl.c<br />+++ b/lib/acl/rte_acl.c<br />@@ -6,8 +6,12 @@<br /> #include <rte_string_fns.h><br /> #include <rte_acl.h><br /> #include <rte_tailq.h><br />+#include <rte_log.h><br /> <br /> #include "acl.h"<br />+#include "acl_log.h"<br />+<br />+RTE_LOG_REGISTER_DEFAULT(acl_logtype, INFO);<br /> <br /> TAILQ_HEAD(rte_acl_list, rte_tailq_entry);<br /> <br />diff --git a/lib/acl/tb_mem.c b/lib/acl/tb_mem.c<br />index f14d7b4fa26e..6a9d96aaeda2 100644<br />--- a/lib/acl/tb_mem.c<br />+++ b/lib/acl/tb_mem.c<br />@@ -3,6 +3,7 @@<br />  */<br /> <br /> #include "tb_mem.h"<br />+#include "acl_log.h"<br /> <br /> /*<br />  * Memory management routines for temporary memory.<br />@@ -25,7 +26,7 @@ tb_pool(struct tb_mem_pool *pool, size_t sz)<br />         size = sz + pool->alignment - 1;<br />         block = calloc(1, size + sizeof(*pool->block));<br />         if (block == NULL) {<!-- --><br />- RTE_LOG(ERR, MALLOC, "%s(%zu)\n failed, currently allocated "<br />+ RTE_LOG(ERR, ACL, "%s(%zu)\n failed, currently allocated "<br />                         "by pool: %zu bytes\n", __func__, sz, pool->alloc);<br />                 siglongjmp(pool->fail, -ENOMEM);<br />                 return NULL;<br />diff --git a/lib/eal/common/eal_common_log.c b/lib/eal/common/eal_common_log.c<br />index d4389e436913..9e853addb717 100644<br />--- a/lib/eal/common/eal_common_log.c<br />+++ b/lib/eal/common/eal_common_log.c<br />@@ -349,14 +349,12 @@ struct logtype {<!-- --><br /> <br /> static const struct logtype logtype_strings[] = {<!-- --><br />         {RTE_LOGTYPE_EAL, "lib.eal"},<br />- {RTE_LOGTYPE_MALLOC, "lib.malloc"},<br />         {RTE_LOGTYPE_RING, "lib.ring"},<br />         {RTE_LOGTYPE_MEMPOOL, "lib.mempool"},<br />         {RTE_LOGTYPE_PMD, "pmd"},<br />         {RTE_LOGTYPE_HASH, "lib.hash"},<br />         {RTE_LOGTYPE_LPM, "lib.lpm"},<br />         {RTE_LOGTYPE_KNI, "lib.kni"},<br />- {RTE_LOGTYPE_ACL, "lib.acl"},<br />         {RTE_LOGTYPE_POWER, "lib.power"},<br />         {RTE_LOGTYPE_METER, "lib.meter"},<br />         {RTE_LOGTYPE_SCHED, "lib.sched"},<br />diff --git a/lib/eal/include/rte_log.h b/lib/eal/include/rte_log.h<br />index 941fbe51fd30..1408722b2c2f 100644<br />--- a/lib/eal/include/rte_log.h<br />+++ b/lib/eal/include/rte_log.h<br />@@ -27,7 +27,7 @@ extern "C" {<!-- --><br /> <br /> /* SDK log type */<br /> #define RTE_LOGTYPE_EAL 0 /**< Log related to eal. */<br />-#define RTE_LOGTYPE_MALLOC 1 /**< Log related to malloc. */<br />+ /* was RTE_LOGTYPE_MALLOC */<br /> #define RTE_LOGTYPE_RING 2 /**< Log related to ring. */<br /> #define RTE_LOGTYPE_MEMPOOL 3 /**< Log related to mempool. */<br />                                  /* was RTE_LOGTYPE_TIMER */<br />@@ -35,7 +35,7 @@ extern "C" {<!-- --><br /> #define RTE_LOGTYPE_HASH 6 /**< Log related to hash table. */<br /> #define RTE_LOGTYPE_LPM 7 /**< Log related to LPM. */<br /> #define RTE_LOGTYPE_KNI 8 /**< Log related to KNI. */<br />-#define RTE_LOGTYPE_ACL 9 /**< Log related to ACL. */<br />+ /* was RTE_LOGTYPE_ACL */<br /> #define RTE_LOGTYPE_POWER 10 /**< Log related to power. */<br /> #define RTE_LOGTYPE_METER 11 /**< Log related to QoS meter. */<br /> #define RTE_LOGTYPE_SCHED 12 /**< Log related to QoS port scheduler. */</p>--</blockquote><div><div><br /><span style="background-color:#ffffff;color:#1a1a1a;float:none;font-family:'ys text' , 'arial' , sans-serif;font-size:16px;font-style:normal;font-weight:400;text-decoration-color:initial;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">Acked-by: Konstantin Ananyev <</span><a href="mailto:konstantin.v.ananyev@yandex.ru" rel="noopener noreferrer" target="_blank" style="background-color:rgb( 255 , 255 , 255 );font-family:'ys text' , 'arial' , sans-serif;font-size:16px;font-style:normal;font-weight:400;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">konstantin.v.ananyev@yandex.ru</a><span style="background-color:#ffffff;color:#1a1a1a;float:none;font-family:'ys text' , 'arial' , sans-serif;font-size:16px;font-style:normal;font-weight:400;text-decoration-color:initial;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">></span></div></div><div> </div><blockquote><br />2.39.2<br /> </blockquote>