[v3,2/5] net/af_packet: use new API to parse kvargs

Message ID 20231103073811.13196-3-fengchengwen@huawei.com (mailing list archive)
State Changes Requested, archived
Delegated to: Ferruh Yigit
Headers
Series fix segment fault when parse args |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

fengchengwen Nov. 3, 2023, 7:38 a.m. UTC
  This driver don't care about the 'iface' value, it should use
rte_kvargs_process_opt() instead of rte_kvargs_process() to parse.

Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
---
 drivers/net/af_packet/rte_eth_af_packet.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
  

Comments

Ferruh Yigit Nov. 3, 2023, 1:11 p.m. UTC | #1
On 11/3/2023 7:38 AM, Chengwen Feng wrote:
> This driver don't care about the 'iface' value, it should use
> rte_kvargs_process_opt() instead of rte_kvargs_process() to parse.
> 
> Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
> ---
>  drivers/net/af_packet/rte_eth_af_packet.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c
> index 397a32db58..54a9f5f746 100644
> --- a/drivers/net/af_packet/rte_eth_af_packet.c
> +++ b/drivers/net/af_packet/rte_eth_af_packet.c
> @@ -1096,8 +1096,8 @@ rte_pmd_af_packet_probe(struct rte_vdev_device *dev)
>  	 */
>  	if (rte_kvargs_count(kvlist, ETH_AF_PACKET_IFACE_ARG) == 1) {
>  
> -		ret = rte_kvargs_process(kvlist, ETH_AF_PACKET_IFACE_ARG,
> -		                         &open_packet_iface, &sockfd);
> +		ret = rte_kvargs_process_opt(kvlist, ETH_AF_PACKET_IFACE_ARG,
> +					     &open_packet_iface, &sockfd);
>  		if (ret < 0)
>  			goto exit;
>  	}

lets not update this driver, I think it is using kvargs
unconventionally, 'iface' requires argument but driver parses it
directly from kvargs.

We can fix kvargs usage more properly instead of this change, I am
taking a mental note for this.
  
fengchengwen Nov. 5, 2023, 5:56 a.m. UTC | #2
Hi Ferruh,

On 2023/11/3 21:11, Ferruh Yigit wrote:
> On 11/3/2023 7:38 AM, Chengwen Feng wrote:
>> This driver don't care about the 'iface' value, it should use
>> rte_kvargs_process_opt() instead of rte_kvargs_process() to parse.
>>
>> Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
>> ---
>>  drivers/net/af_packet/rte_eth_af_packet.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c
>> index 397a32db58..54a9f5f746 100644
>> --- a/drivers/net/af_packet/rte_eth_af_packet.c
>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c
>> @@ -1096,8 +1096,8 @@ rte_pmd_af_packet_probe(struct rte_vdev_device *dev)
>>  	 */
>>  	if (rte_kvargs_count(kvlist, ETH_AF_PACKET_IFACE_ARG) == 1) {
>>  
>> -		ret = rte_kvargs_process(kvlist, ETH_AF_PACKET_IFACE_ARG,
>> -		                         &open_packet_iface, &sockfd);
>> +		ret = rte_kvargs_process_opt(kvlist, ETH_AF_PACKET_IFACE_ARG,
>> +					     &open_packet_iface, &sockfd);
>>  		if (ret < 0)
>>  			goto exit;
>>  	}
> 
> lets not update this driver, I think it is using kvargs
> unconventionally, 'iface' requires argument but driver parses it
> directly from kvargs.
> 
> We can fix kvargs usage more properly instead of this change, I am
> taking a mental note for this.

got, it was droped from v4.

Thanks
Chengwen

> .
>
  

Patch

diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c
index 397a32db58..54a9f5f746 100644
--- a/drivers/net/af_packet/rte_eth_af_packet.c
+++ b/drivers/net/af_packet/rte_eth_af_packet.c
@@ -1096,8 +1096,8 @@  rte_pmd_af_packet_probe(struct rte_vdev_device *dev)
 	 */
 	if (rte_kvargs_count(kvlist, ETH_AF_PACKET_IFACE_ARG) == 1) {
 
-		ret = rte_kvargs_process(kvlist, ETH_AF_PACKET_IFACE_ARG,
-		                         &open_packet_iface, &sockfd);
+		ret = rte_kvargs_process_opt(kvlist, ETH_AF_PACKET_IFACE_ARG,
+					     &open_packet_iface, &sockfd);
 		if (ret < 0)
 			goto exit;
 	}