[v2] common/mlx5: fix missing default devargs initialization

Message ID 20220301110935.3958252-1-michaelba@nvidia.com (mailing list archive)
State Accepted, archived
Delegated to: Raslan Darawsheh
Headers
Series [v2] common/mlx5: fix missing default devargs initialization |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS
ci/github-robot: build success github build: passed
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-aarch64-unit-testing success Testing PASS
ci/iol-x86_64-compile-testing success Testing PASS
ci/iol-x86_64-unit-testing success Testing PASS
ci/iol-aarch64-compile-testing success Testing PASS
ci/iol-abi-testing success Testing PASS

Commit Message

Michael Baum March 1, 2022, 11:09 a.m. UTC
  Device arguments list is provided along with its identifier as part of
EAL arguments.
The arguments specified in the list are taken from it, and the rest is
initialized to the default values.

When no list is provided at all, all arguments should have been
initialized to their default values. However, they are mistakenly
initialized to zero which may be a valid value for some.

This patch initializes the default values before checking whether
arguments have been specified.

Fixes: a729d2f093e9 ("common/mlx5: refactor devargs management")

Signed-off-by: Michael Baum <michaelba@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
---

v2: updating Fixes reference hash.

 drivers/common/mlx5/mlx5_common.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
  

Comments

Raslan Darawsheh March 2, 2022, 4:33 p.m. UTC | #1
Hi,

> -----Original Message-----
> From: Michael Baum <michaelba@nvidia.com>
> Sent: Tuesday, March 1, 2022 1:10 PM
> To: dev@dpdk.org
> Cc: Matan Azrad <matan@nvidia.com>; Raslan Darawsheh
> <rasland@nvidia.com>; Slava Ovsiienko <viacheslavo@nvidia.com>
> Subject: [PATCH v2] common/mlx5: fix missing default devargs initialization
> 
> Device arguments list is provided along with its identifier as part of EAL
> arguments.
> The arguments specified in the list are taken from it, and the rest is initialized
> to the default values.
> 
> When no list is provided at all, all arguments should have been initialized to
> their default values. However, they are mistakenly initialized to zero which
> may be a valid value for some.
> 
> This patch initializes the default values before checking whether arguments
> have been specified.
> 
> Fixes: a729d2f093e9 ("common/mlx5: refactor devargs management")
added:
Reported-at: https://bugs.dpdk.org/show_bug.cgi?id=945
> 
> Signed-off-by: Michael Baum <michaelba@nvidia.com>
> Acked-by: Matan Azrad <matan@nvidia.com>
> ---
> 
> v2: updating Fixes reference hash.
> 
>  drivers/common/mlx5/mlx5_common.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 

Patch applied to next-net-mlx,

Kindest regards,
Raslan Darawsheh
  
Ferruh Yigit March 3, 2022, 4:14 p.m. UTC | #2
On 3/2/2022 4:33 PM, Raslan Darawsheh wrote:
> Hi,
> 
>> -----Original Message-----
>> From: Michael Baum <michaelba@nvidia.com>
>> Sent: Tuesday, March 1, 2022 1:10 PM
>> To: dev@dpdk.org
>> Cc: Matan Azrad <matan@nvidia.com>; Raslan Darawsheh
>> <rasland@nvidia.com>; Slava Ovsiienko <viacheslavo@nvidia.com>
>> Subject: [PATCH v2] common/mlx5: fix missing default devargs initialization
>>
>> Device arguments list is provided along with its identifier as part of EAL
>> arguments.
>> The arguments specified in the list are taken from it, and the rest is initialized
>> to the default values.
>>
>> When no list is provided at all, all arguments should have been initialized to
>> their default values. However, they are mistakenly initialized to zero which
>> may be a valid value for some.
>>
>> This patch initializes the default values before checking whether arguments
>> have been specified.
>>
>> Fixes: a729d2f093e9 ("common/mlx5: refactor devargs management")
> added:
> Reported-at: https://bugs.dpdk.org/show_bug.cgi?id=945

We have a defined keyword for it, and it should go before Fixes tag, like:

      Bugzilla ID: 945
      Fixes: a729d2f093e9 ("common/mlx5: refactor devargs management")

updated accordingly in next-net

>>
>> Signed-off-by: Michael Baum <michaelba@nvidia.com>
>> Acked-by: Matan Azrad <matan@nvidia.com>
>> ---
>>
>> v2: updating Fixes reference hash.
>>
>>   drivers/common/mlx5/mlx5_common.c | 4 ++--
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
> 
> Patch applied to next-net-mlx,
> 
> Kindest regards,
> Raslan Darawsheh
  

Patch

diff --git a/drivers/common/mlx5/mlx5_common.c b/drivers/common/mlx5/mlx5_common.c
index 94c303ce81..ef1604d223 100644
--- a/drivers/common/mlx5/mlx5_common.c
+++ b/drivers/common/mlx5/mlx5_common.c
@@ -326,8 +326,6 @@  mlx5_common_config_get(struct mlx5_kvargs_ctrl *mkvlist,
 	};
 	int ret = 0;
 
-	if (mkvlist == NULL)
-		return 0;
 	/* Set defaults. */
 	config->mr_ext_memseg_en = 1;
 	config->mr_mempool_reg_en = 1;
@@ -335,6 +333,8 @@  mlx5_common_config_get(struct mlx5_kvargs_ctrl *mkvlist,
 	config->dbnc = MLX5_ARG_UNSET;
 	config->device_fd = MLX5_ARG_UNSET;
 	config->pd_handle = MLX5_ARG_UNSET;
+	if (mkvlist == NULL)
+		return 0;
 	/* Process common parameters. */
 	ret = mlx5_kvargs_process(mkvlist, params,
 				  mlx5_common_args_check_handler, config);