mlx5: fix log initialization
Checks
Commit Message
The mlx5 driver had two init functions, but this could
cause log initialization to be done after the
other initialization. Also, the name of the function does
not match convention (cut/paste error?).
Fix by initializing log type first at start of the pmd_init.
This also gets rid of having two constructor functions.
Fixes: a170a30d22a8 ("net/mlx5: use dynamic logging")
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
drivers/net/mlx5/mlx5.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
Comments
On Wed, Jun 13, 2018 at 11:46:26AM -0700, Stephen Hemminger wrote:
> The mlx5 driver had two init functions, but this could
> cause log initialization to be done after the
> other initialization. Also, the name of the function does
> not match convention (cut/paste error?).
Indeed an error in the copy/paste, sorry,
> Fix by initializing log type first at start of the pmd_init.
> This also gets rid of having two constructor functions.
>
> Fixes: a170a30d22a8 ("net/mlx5: use dynamic logging")
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
> ---
> drivers/net/mlx5/mlx5.c | 13 +++++--------
> 1 file changed, 5 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
> index c933e274fe32..6ec4f3178b6b 100644
> --- a/drivers/net/mlx5/mlx5.c
> +++ b/drivers/net/mlx5/mlx5.c
> @@ -1439,6 +1439,11 @@ RTE_INIT(rte_mlx5_pmd_init);
> static void
> rte_mlx5_pmd_init(void)
> {
> + /* Initialize driver log type. */
> + mlx5_logtype = rte_log_register("pmd.net.mlx5");
> + if (mlx5_logtype >= 0)
> + rte_log_set_level(mlx5_logtype, RTE_LOG_NOTICE);
> +
> /* Build the static tables for Verbs conversion. */
> mlx5_set_ptype_table();
> mlx5_set_cksum_table();
> @@ -1480,11 +1485,3 @@ rte_mlx5_pmd_init(void)
> RTE_PMD_EXPORT_NAME(net_mlx5, __COUNTER__);
> RTE_PMD_REGISTER_PCI_TABLE(net_mlx5, mlx5_pci_id_map);
> RTE_PMD_REGISTER_KMOD_DEP(net_mlx5, "* ib_uverbs & mlx5_core & mlx5_ib");
> -
> -/** Initialize driver log type. */
> -RTE_INIT(vdev_netvsc_init_log)
> -{
> - mlx5_logtype = rte_log_register("pmd.net.mlx5");
> - if (mlx5_logtype >= 0)
> - rte_log_set_level(mlx5_logtype, RTE_LOG_NOTICE);
> -}
> --
> 2.17.1
Thanks,
Thursday, June 14, 2018 9:46 AM, Nélio Laranjeiro:
> Subject: Re: [dpdk-dev] [PATCH] mlx5: fix log initialization
>
> On Wed, Jun 13, 2018 at 11:46:26AM -0700, Stephen Hemminger wrote:
> > The mlx5 driver had two init functions, but this could cause log
> > initialization to be done after the other initialization. Also, the
> > name of the function does not match convention (cut/paste error?).
>
> Indeed an error in the copy/paste, sorry,
>
> > Fix by initializing log type first at start of the pmd_init.
> > This also gets rid of having two constructor functions.
> >
> > Fixes: a170a30d22a8 ("net/mlx5: use dynamic logging")
> > Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
>
> Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
>
Applied to next-net-mlx with few log modifications:
1. title should be net/mlx5
2. Cc: stable@dpdk.org
Thanks.
@@ -1439,6 +1439,11 @@ RTE_INIT(rte_mlx5_pmd_init);
static void
rte_mlx5_pmd_init(void)
{
+ /* Initialize driver log type. */
+ mlx5_logtype = rte_log_register("pmd.net.mlx5");
+ if (mlx5_logtype >= 0)
+ rte_log_set_level(mlx5_logtype, RTE_LOG_NOTICE);
+
/* Build the static tables for Verbs conversion. */
mlx5_set_ptype_table();
mlx5_set_cksum_table();
@@ -1480,11 +1485,3 @@ rte_mlx5_pmd_init(void)
RTE_PMD_EXPORT_NAME(net_mlx5, __COUNTER__);
RTE_PMD_REGISTER_PCI_TABLE(net_mlx5, mlx5_pci_id_map);
RTE_PMD_REGISTER_KMOD_DEP(net_mlx5, "* ib_uverbs & mlx5_core & mlx5_ib");
-
-/** Initialize driver log type. */
-RTE_INIT(vdev_netvsc_init_log)
-{
- mlx5_logtype = rte_log_register("pmd.net.mlx5");
- if (mlx5_logtype >= 0)
- rte_log_set_level(mlx5_logtype, RTE_LOG_NOTICE);
-}