common/iavf: fix arq resource leak

Message ID 20210910031249.11534-1-chenqiming_huawei@163.com (mailing list archive)
State Accepted, archived
Delegated to: Qi Zhang
Headers
Series common/iavf: fix arq resource leak |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/github-robot: build success github build: passed
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-compile-testing success Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-x86_64-unit-testing success Testing PASS
ci/intel-Testing fail Testing issues
ci/iol-x86_64-compile-testing success Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS

Commit Message

Qiming Chen Sept. 10, 2021, 3:12 a.m. UTC
  In the iavf_init_arq function, if an exception occurs in the
iavf_config_arq_regs function, and the previously applied arq bufs
resource is released. This patch maintains the same modification
as the iavf_init_asq function to roll back resources.

Fixes: 87aca6d8d8a4 ("net/iavf/base: fix command buffer memory leak")
Cc: stable@dpdk.org

Signed-off-by: Qiming Chen <chenqiming_huawei@163.com>
---
 drivers/common/iavf/iavf_adminq.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
  

Comments

Wang, Haiyue Sept. 10, 2021, 3:29 a.m. UTC | #1
> -----Original Message-----
> From: stable <stable-bounces@dpdk.org> On Behalf Of Qiming Chen
> Sent: Friday, September 10, 2021 11:13
> To: dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Wu, Jingjing <jingjing.wu@intel.com>; Qiming Chen
> <chenqiming_huawei@163.com>; stable@dpdk.org
> Subject: [dpdk-stable] [PATCH] common/iavf: fix arq resource leak
> 
> In the iavf_init_arq function, if an exception occurs in the
> iavf_config_arq_regs function, and the previously applied arq bufs
> resource is released. This patch maintains the same modification
> as the iavf_init_asq function to roll back resources.
> 
> Fixes: 87aca6d8d8a4 ("net/iavf/base: fix command buffer memory leak")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Qiming Chen <chenqiming_huawei@163.com>
> ---
>  drivers/common/iavf/iavf_adminq.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 

Can't image that you ARE superman to cover ixgbe,ixgbevf, i40e, now iavf.

It MUST BE done by some code scan tool, I don't believe you have real time to
read the whole code. Right ?

Sometimes, Defensive programming is good, but ... I prefer to the PMD
can run well every time, if failed, it must have some bugs.


> --
> 2.30.1.windows.1
  
Qiming Chen Sept. 10, 2021, 6:26 a.m. UTC | #2
Thanks your reply.


You are right. The resource leak is indeed scanned by tools, and then manually confirmed whether it is a problem. 
Our team has been developing and maintaining for many years. Because the company process is not perfect, 
the bug has not been promoted to the community, resulting in a lot of accumulation. I am currently Complete these things step by step.


In the near future, I hope you will give more guidance and maintain the dpdk intel driver together.
  
Wang, Haiyue Sept. 10, 2021, 6:35 a.m. UTC | #3
Thanks for the tool.

Anyway, please setup your mail firstly.

Your mail reply is bad for community, you can see what it looks like:
http://patchwork.dpdk.org/project/dpdk/patch/20210910031249.11534-1-chenqiming_huawei@163.com/

The right reply is as:
https://patchwork.dpdk.org/project/dpdk/patch/20210910135205.269651-1-wenwux.ma@intel.com/

I’ve told you before: REPLY WITH plain text format, and REPLY inline.

BR,
Haiyue

From: Qiming Chen <chenqiming_huawei@163.com> 
Sent: Friday, September 10, 2021 14:27
To: Wang, Haiyue <haiyue.wang@intel.com>
Cc: dev@dpdk.org; Xing, Beilei <beilei.xing@intel.com>; Wu, Jingjing <jingjing.wu@intel.com>; stable@dpdk.org
Subject: Re: [dpdk-stable] [PATCH] common/iavf: fix arq resource leak

Thanks your reply.

You are right. The resource leak is indeed scanned by tools, and then manually confirmed whether it is a problem. 
Our team has been developing and maintaining for many years. Because the company process is not perfect, 
the bug has not been promoted to the community, resulting in a lot of accumulation. I am currently Complete these things step by step.

In the near future, I hope you will give more guidance and maintain the dpdk intel driver together.
  
Qiming Chen Sept. 10, 2021, 7:07 a.m. UTC | #4
Can you tell me how to set up email reply? I don’t quite understand what you said about inline replies, and the green text and ">" are automatically generated?


On 9/10/2021 14:35,Wang, Haiyue<haiyue.wang@intel.com> wrote:
Thanks for the tool.

Anyway, please setup your mail firstly.

Your mail reply is bad for community, you can see what it looks like:
http://patchwork.dpdk.org/project/dpdk/patch/20210910031249.11534-1-chenqiming_huawei@163.com/

The right reply is as:
https://patchwork.dpdk.org/project/dpdk/patch/20210910135205.269651-1-wenwux.ma@intel.com/

I’ve told you before: REPLY WITH plain text format, and REPLY inline.

BR,
Haiyue

From: Qiming Chen <chenqiming_huawei@163.com>
Sent: Friday, September 10, 2021 14:27
To: Wang, Haiyue <haiyue.wang@intel.com>
Cc: dev@dpdk.org; Xing, Beilei <beilei.xing@intel.com>; Wu, Jingjing <jingjing.wu@intel.com>; stable@dpdk.org
Subject: Re: [dpdk-stable] [PATCH] common/iavf: fix arq resource leak

Thanks your reply.

You are right. The resource leak is indeed scanned by tools, and then manually confirmed whether it is a problem. 
Our team has been developing and maintaining for many years. Because the company process is not perfect, 
the bug has not been promoted to the community, resulting in a lot of accumulation. I am currently Complete these things step by step.

In the near future, I hope you will give more guidance and maintain the dpdk intel driver together.
  
Qi Zhang Sept. 27, 2021, 7:12 a.m. UTC | #5
> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Qiming Chen
> Sent: Friday, September 10, 2021 11:13 AM
> To: dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Wu, Jingjing <jingjing.wu@intel.com>;
> Qiming Chen <chenqiming_huawei@163.com>; stable@dpdk.org
> Subject: [dpdk-dev] [PATCH] common/iavf: fix arq resource leak
> 
> In the iavf_init_arq function, if an exception occurs in the iavf_config_arq_regs
> function, and the previously applied arq bufs resource is released. This patch
> maintains the same modification as the iavf_init_asq function to roll back
> resources.
> 
> Fixes: 87aca6d8d8a4 ("net/iavf/base: fix command buffer memory leak")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Qiming Chen <chenqiming_huawei@163.com>

Acked-by: Qi Zhang <qi.z.zhang@intel.com>

Applied to dpdk-next-net-intel.

Thanks
Qi
  

Patch

diff --git a/drivers/common/iavf/iavf_adminq.c b/drivers/common/iavf/iavf_adminq.c
index 0bf5af0cbe..9c36e8908e 100644
--- a/drivers/common/iavf/iavf_adminq.c
+++ b/drivers/common/iavf/iavf_adminq.c
@@ -417,7 +417,7 @@  enum iavf_status iavf_init_arq(struct iavf_hw *hw)
 	/* initialize base registers */
 	ret_code = iavf_config_arq_regs(hw);
 	if (ret_code != IAVF_SUCCESS)
-		goto init_adminq_free_rings;
+		goto init_config_regs;
 
 	/* success! */
 	hw->aq.arq.count = hw->aq.num_arq_entries;
@@ -425,6 +425,10 @@  enum iavf_status iavf_init_arq(struct iavf_hw *hw)
 
 init_adminq_free_rings:
 	iavf_free_adminq_arq(hw);
+	return ret_code;
+
+init_config_regs:
+	iavf_free_arq_bufs(hw);
 
 init_adminq_exit:
 	return ret_code;