net/cxgbe: implement dynamic log type

Message ID 20190716185331.20374-1-stephen@networkplumber.org
State Accepted
Delegated to: Ferruh Yigit
Headers show
Series
  • net/cxgbe: implement dynamic log type
Related show

Checks

Context Check Description
ci/intel-Performance-Testing success Performance Testing PASS
ci/mellanox-Performance-Testing success Performance Testing PASS
ci/Intel-compilation fail Compilation issues
ci/checkpatch success coding style OK

Commit Message

Stephen Hemminger July 16, 2019, 6:53 p.m.
The generic RTE_LOGTYPE_PMD is a historical relic and should
be deprecated. Every driver must register its own logtype.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 drivers/net/cxgbe/cxgbe_compat.h | 7 +++++--
 drivers/net/cxgbe/cxgbe_ethdev.c | 9 +++++++++
 2 files changed, 14 insertions(+), 2 deletions(-)

Comments

Ferruh Yigit Aug. 27, 2019, 8:28 a.m. | #1
On 7/16/2019 7:53 PM, Stephen Hemminger wrote:
> The generic RTE_LOGTYPE_PMD is a historical relic and should
> be deprecated. Every driver must register its own logtype.
> 
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>

Applied to dpdk-next-net/master, thanks.

Patch

diff --git a/drivers/net/cxgbe/cxgbe_compat.h b/drivers/net/cxgbe/cxgbe_compat.h
index cce51c2f975b..93df0a7754a5 100644
--- a/drivers/net/cxgbe/cxgbe_compat.h
+++ b/drivers/net/cxgbe/cxgbe_compat.h
@@ -20,8 +20,11 @@ 
 #include <rte_io.h>
 #include <rte_net.h>
 
+extern int cxgbe_logtype;
+
 #define dev_printf(level, fmt, ...) \
-	RTE_LOG(level, PMD, "rte_cxgbe_pmd: " fmt, ##__VA_ARGS__)
+	rte_log(RTE_LOG_ ## level, cxgbe_logtype, \
+		"rte_cxgbe_pmd: " fmt, ##__VA_ARGS__)
 
 #define dev_err(x, fmt, ...) dev_printf(ERR, fmt, ##__VA_ARGS__)
 #define dev_info(x, fmt, ...) dev_printf(INFO, fmt, ##__VA_ARGS__)
@@ -63,7 +66,7 @@ 
 
 #ifdef RTE_LIBRTE_CXGBE_DEBUG
 #define CXGBE_FUNC_TRACE() \
-	RTE_LOG(DEBUG, PMD, "CXGBE trace: %s\n", __func__)
+	dev_printf(DEBUG, "CXGBE trace: %s\n", __func__)
 #else
 #define CXGBE_FUNC_TRACE() do { } while (0)
 #endif
diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c
index 3a373ec1daa0..efb458d4707c 100644
--- a/drivers/net/cxgbe/cxgbe_ethdev.c
+++ b/drivers/net/cxgbe/cxgbe_ethdev.c
@@ -38,6 +38,8 @@ 
 #include "cxgbe_pfvf.h"
 #include "cxgbe_flow.h"
 
+int cxgbe_logtype;
+
 /*
  * Macros needed to support the PCI Device ID Table ...
  */
@@ -1218,3 +1220,10 @@  RTE_PMD_REGISTER_KMOD_DEP(net_cxgbe, "* igb_uio | uio_pci_generic | vfio-pci");
 RTE_PMD_REGISTER_PARAM_STRING(net_cxgbe,
 			      CXGBE_DEVARG_KEEP_OVLAN "=<0|1> "
 			      CXGBE_DEVARG_FORCE_LINK_UP "=<0|1> ");
+
+RTE_INIT(cxgbe_init_log)
+{
+	cxgbe_logtype = rte_log_register("pmd.net.cxgbe");
+	if (cxgbe_logtype >= 0)
+		rte_log_set_level(cxgbe_logtype, RTE_LOG_NOTICE);
+}