[v2] net/mlx4: use dynamic log type

Message ID 20190524160316.24922-1-stephen@networkplumber.org (mailing list archive)
State Accepted, archived
Delegated to: Shahaf Shuler
Headers
Series [v2] net/mlx4: use dynamic log type |

Checks

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

Commit Message

Stephen Hemminger May 24, 2019, 4:03 p.m. UTC
  From: Stephen Hemminger <sthemmin@microsoft.com>

This driver should use dynamic log level not RTE_LOGTYPE_PMD.
Other drivers were converted back in 18.02.

This is really a bug, all other drivers use dynamic log levels
by now.

Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
---
v2 - use rte_log and fix debug logs

 drivers/net/mlx4/mlx4.c       | 8 ++++++++
 drivers/net/mlx4/mlx4_utils.h | 6 ++++--
 2 files changed, 12 insertions(+), 2 deletions(-)
  

Comments

Ferruh Yigit May 24, 2019, 5:13 p.m. UTC | #1
On 5/24/2019 5:03 PM, Stephen Hemminger wrote:
> From: Stephen Hemminger <sthemmin@microsoft.com>
> 
> This driver should use dynamic log level not RTE_LOGTYPE_PMD.
> Other drivers were converted back in 18.02.
> 
> This is really a bug, all other drivers use dynamic log levels
> by now.
> 
> Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>

Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
  
Shahaf Shuler May 26, 2019, 7:24 p.m. UTC | #2
Friday, May 24, 2019 8:13 PM, Ferruh Yigit:

> Subject: Re: [dpdk-dev] [PATCH v2] net/mlx4: use dynamic log type
> 
> On 5/24/2019 5:03 PM, Stephen Hemminger wrote:
> > From: Stephen Hemminger <sthemmin@microsoft.com>
> >
> > This driver should use dynamic log level not RTE_LOGTYPE_PMD.
> > Other drivers were converted back in 18.02.
> >
> > This is really a bug, all other drivers use dynamic log levels by now.
> >
> > Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
> 
> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>

Applied to next-net-mlx, thanks.
  

Patch

diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c
index fe559c040706..e532dc53738f 100644
--- a/drivers/net/mlx4/mlx4.c
+++ b/drivers/net/mlx4/mlx4.c
@@ -60,6 +60,9 @@  static rte_spinlock_t mlx4_shared_data_lock = RTE_SPINLOCK_INITIALIZER;
 /* Process local data for secondary processes. */
 static struct mlx4_local_data mlx4_local_data;
 
+/** Driver-specific log messages type. */
+int mlx4_logtype;
+
 /** Configuration structure for device arguments. */
 struct mlx4_conf {
 	struct {
@@ -1272,6 +1275,11 @@  mlx4_glue_init(void)
  */
 RTE_INIT(rte_mlx4_pmd_init)
 {
+	/* Initialize driver log type. */
+	mlx4_logtype = rte_log_register("pmd.net.mlx4");
+	if (mlx4_logtype >= 0)
+		rte_log_set_level(mlx4_logtype, RTE_LOG_NOTICE);
+
 	/*
 	 * MLX4_DEVICE_FATAL_CLEANUP tells ibv_destroy functions we
 	 * want to get success errno value in case of calling them
diff --git a/drivers/net/mlx4/mlx4_utils.h b/drivers/net/mlx4/mlx4_utils.h
index 86abb3b7e376..a49190252fe1 100644
--- a/drivers/net/mlx4/mlx4_utils.h
+++ b/drivers/net/mlx4/mlx4_utils.h
@@ -15,6 +15,8 @@ 
 
 #include "mlx4.h"
 
+extern int mlx4_logtype;
+
 #ifndef NDEBUG
 
 /*
@@ -35,7 +37,7 @@  pmd_drv_log_basename(const char *s)
 }
 
 #define PMD_DRV_LOG(level, ...) \
-	RTE_LOG(level, PMD, \
+	rte_log(RTE_LOG_ ## level, mlx4_logtype, \
 		RTE_FMT("%s:%u: %s(): " RTE_FMT_HEAD(__VA_ARGS__,) "\n", \
 			pmd_drv_log_basename(__FILE__), \
 			__LINE__, \
@@ -52,7 +54,7 @@  pmd_drv_log_basename(const char *s)
  */
 
 #define PMD_DRV_LOG(level, ...) \
-	RTE_LOG(level, PMD, \
+	rte_log(RTE_LOG_ ## level, mlx4_logtype, \
 		RTE_FMT(MLX4_DRIVER_NAME ": " \
 			RTE_FMT_HEAD(__VA_ARGS__,) "\n", \
 		RTE_FMT_TAIL(__VA_ARGS__,)))