net/virtio: implement dynamic logging

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Tested-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
This commit is contained in:
Stephen Hemminger 2017-12-18 22:38:35 -08:00 committed by Ferruh Yigit
parent ed5bbb767c
commit 0062818856
3 changed files with 22 additions and 14 deletions

View File

@ -360,10 +360,8 @@ CONFIG_RTE_LIBRTE_DPAA2_DEBUG_TX_FREE=n
# Compile burst-oriented VIRTIO PMD driver
#
CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_INIT=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DRIVER=n
CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n
#

View File

@ -77,6 +77,9 @@ static int virtio_dev_queue_stats_mapping_set(
uint8_t stat_idx,
uint8_t is_rx);
int virtio_logtype_init;
int virtio_logtype_driver;
/*
* The set of PCI devices this driver supports
*/
@ -2043,3 +2046,15 @@ __rte_unused uint8_t is_rx)
RTE_PMD_EXPORT_NAME(net_virtio, __COUNTER__);
RTE_PMD_REGISTER_PCI_TABLE(net_virtio, pci_id_virtio_map);
RTE_PMD_REGISTER_KMOD_DEP(net_virtio, "* igb_uio | uio_pci_generic | vfio-pci");
RTE_INIT(virtio_init_log);
static void
virtio_init_log(void)
{
virtio_logtype_init = rte_log_register("pmd.virtio.init");
if (virtio_logtype_init >= 0)
rte_log_set_level(virtio_logtype_init, RTE_LOG_NOTICE);
virtio_logtype_driver = rte_log_register("pmd.virtio.driver");
if (virtio_logtype_driver >= 0)
rte_log_set_level(virtio_logtype_driver, RTE_LOG_NOTICE);
}

View File

@ -7,14 +7,12 @@
#include <rte_log.h>
#ifdef RTE_LIBRTE_VIRTIO_DEBUG_INIT
extern int virtio_logtype_init;
#define PMD_INIT_LOG(level, fmt, args...) \
RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args)
rte_log(RTE_LOG_ ## level, virtio_logtype_init, \
"%s(): " fmt "\n", __func__, ##args)
#define PMD_INIT_FUNC_TRACE() PMD_INIT_LOG(DEBUG, " >>")
#else
#define PMD_INIT_LOG(level, fmt, args...) do { } while(0)
#define PMD_INIT_FUNC_TRACE() do { } while(0)
#endif
#ifdef RTE_LIBRTE_VIRTIO_DEBUG_RX
#define PMD_RX_LOG(level, fmt, args...) \
@ -30,12 +28,9 @@
#define PMD_TX_LOG(level, fmt, args...) do { } while(0)
#endif
#ifdef RTE_LIBRTE_VIRTIO_DEBUG_DRIVER
extern int virtio_logtype_driver;
#define PMD_DRV_LOG(level, fmt, args...) \
RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args)
#else
#define PMD_DRV_LOG(level, fmt, args...) do { } while(0)
#endif
rte_log(RTE_LOG_ ## level, virtio_logtype_driver, \
"%s(): " fmt "\n", __func__, ## args)
#endif /* _VIRTIO_LOGS_H_ */