From: Stephen Hemminger Date: Tue, 19 Dec 2017 06:38:40 +0000 (-0800) Subject: net/liquidio: implement dynamic logging X-Git-Tag: spdx-start~497 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=70e28c612d657c3115307d6e3459b6af7f1ee377;p=dpdk.git net/liquidio: implement dynamic logging This driver mostly uses the common pattern. Convert this to the dynamic logging. Signed-off-by: Stephen Hemminger --- diff --git a/config/common_base b/config/common_base index 2eee92a01f..071bd0ec10 100644 --- a/config/common_base +++ b/config/common_base @@ -311,8 +311,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 6c24962312..8f6ef63812 100644 --- a/drivers/net/liquidio/lio_ethdev.c +++ b/drivers/net/liquidio/lio_ethdev.c @@ -14,6 +14,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, @@ -2181,3 +2184,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 d38e2a1ebc..f227827081 100644 --- a/drivers/net/liquidio/lio_logs.h +++ b/drivers/net/liquidio/lio_logs.h @@ -5,8 +5,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) @@ -14,22 +16,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...) \