[dpdk-dev] [PATCH 11/11] lio: implement dynamic logging
Stephen Hemminger
stephen at networkplumber.org
Tue Dec 19 07:38:40 CET 2017
This driver mostly uses the common pattern. Convert this to the
dynamic logging.
Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
---
config/common_base | 2 --
drivers/net/liquidio/lio_ethdev.c | 15 +++++++++++++++
drivers/net/liquidio/lio_logs.h | 20 ++++++++------------
3 files changed, 23 insertions(+), 14 deletions(-)
diff --git a/config/common_base b/config/common_base
index 1718f6a14449..ee716adc4e0f 100644
--- a/config/common_base
+++ b/config/common_base
@@ -312,8 +312,6 @@ CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_MBOX=n
# Compile burst-oriented Cavium LiquidIO PMD driver
#
CONFIG_RTE_LIBRTE_LIO_PMD=y
-CONFIG_RTE_LIBRTE_LIO_DEBUG_DRIVER=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_INIT=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_RX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_TX=n
CONFIG_RTE_LIBRTE_LIO_DEBUG_MBOX=n
diff --git a/drivers/net/liquidio/lio_ethdev.c b/drivers/net/liquidio/lio_ethdev.c
index 84b8a3288d12..5ad7c9902af4 100644
--- a/drivers/net/liquidio/lio_ethdev.c
+++ b/drivers/net/liquidio/lio_ethdev.c
@@ -43,6 +43,9 @@
#include "lio_ethdev.h"
#include "lio_rxtx.h"
+int lio_logtype_init;
+int lio_logtype_driver;
+
/* Default RSS key in use */
static uint8_t lio_rss_key[40] = {
0x6D, 0x5A, 0x56, 0xDA, 0x25, 0x5B, 0x0E, 0xC2,
@@ -2180,3 +2183,15 @@ static struct rte_pci_driver rte_liovf_pmd = {
RTE_PMD_REGISTER_PCI(net_liovf, rte_liovf_pmd);
RTE_PMD_REGISTER_PCI_TABLE(net_liovf, pci_id_liovf_map);
RTE_PMD_REGISTER_KMOD_DEP(net_liovf, "* igb_uio | vfio-pci");
+
+RTE_INIT(lio_init_log);
+static void
+lio_init_log(void)
+{
+ lio_logtype_init = rte_log_register("pmd.lio.init");
+ if (lio_logtype_init >= 0)
+ rte_log_set_level(lio_logtype_init, RTE_LOG_NOTICE);
+ lio_logtype_driver = rte_log_register("pmd.lio.driver");
+ if (lio_logtype_driver >= 0)
+ rte_log_set_level(lio_logtype_driver, RTE_LOG_NOTICE);
+}
diff --git a/drivers/net/liquidio/lio_logs.h b/drivers/net/liquidio/lio_logs.h
index a4c9ca4db291..c6f9bd15bd79 100644
--- a/drivers/net/liquidio/lio_logs.h
+++ b/drivers/net/liquidio/lio_logs.h
@@ -34,8 +34,10 @@
#ifndef _LIO_LOGS_H_
#define _LIO_LOGS_H_
-#define lio_dev_printf(lio_dev, level, fmt, args...) \
- RTE_LOG(level, PMD, "%s" fmt, (lio_dev)->dev_string, ##args)
+extern int lio_logtype_driver;
+#define lio_dev_printf(lio_dev, level, fmt, args...) \
+ rte_log(RTE_LOG_ ## level, lio_logtype_driver, \
+ "%s" fmt, (lio_dev)->dev_string, ##args)
#define lio_dev_info(lio_dev, fmt, args...) \
lio_dev_printf(lio_dev, INFO, "INFO: " fmt, ##args)
@@ -43,22 +45,16 @@
#define lio_dev_err(lio_dev, fmt, args...) \
lio_dev_printf(lio_dev, ERR, "ERROR: %s() " fmt, __func__, ##args)
-#define PMD_INIT_LOG(level, fmt, args...) RTE_LOG(level, PMD, fmt, ## args)
+extern int lio_logtype_init;
+#define PMD_INIT_LOG(level, fmt, args...) \
+ rte_log(RTE_LOG_ ## level, lio_logtype_init, \
+ fmt, ## args)
/* Enable these through config options */
-
-#ifdef RTE_LIBRTE_LIO_DEBUG_INIT
#define PMD_INIT_FUNC_TRACE() PMD_INIT_LOG(DEBUG, "%s() >>\n", __func__)
-#else /* !RTE_LIBRTE_LIO_DEBUG_INIT */
-#define PMD_INIT_FUNC_TRACE() do { } while (0)
-#endif /* RTE_LIBRTE_LIO_DEBUG_INIT */
-#ifdef RTE_LIBRTE_LIO_DEBUG_DRIVER
#define lio_dev_dbg(lio_dev, fmt, args...) \
lio_dev_printf(lio_dev, DEBUG, "DEBUG: %s() " fmt, __func__, ##args)
-#else /* !RTE_LIBRTE_LIO_DEBUG_DRIVER */
-#define lio_dev_dbg(lio_dev, fmt, args...) do { } while (0)
-#endif /* RTE_LIBRTE_LIO_DEBUG_DRIVER */
#ifdef RTE_LIBRTE_LIO_DEBUG_RX
#define PMD_RX_LOG(lio_dev, level, fmt, args...) \
--
2.11.0
More information about the dev
mailing list