diff mbox series

[net] rds: memory leak in __rds_conn_create()

Message ID 20211214104659.51765-1-hbh25y@gmail.com (mailing list archive)
State Not Applicable
Headers show
Series [net] rds: memory leak in __rds_conn_create() | expand

Commit Message

Hangyu Hua Dec. 14, 2021, 10:46 a.m. UTC
__rds_conn_create() did not release conn->c_path when loop_trans != 0 and
trans->t_prefer_loopback != 0 and is_outgoing == 0.

Signed-off-by: Hangyu Hua <hbh25y@gmail.com>
---
 net/rds/connection.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Sharath Srinivasan Dec. 14, 2021, 11:09 a.m. UTC | #1
On 12/14/21 02:46, Hangyu Hua wrote:

> __rds_conn_create() did not release conn->c_path when loop_trans != 0 and
> trans->t_prefer_loopback != 0 and is_outgoing == 0.

Probably a good idea to include:

Fixes: aced3ce57cd3 ("RDS tcp loopback connection can hang")

> Signed-off-by: Hangyu Hua <hbh25y@gmail.com>
With that,

Reviewed-by: Sharath Srinivasan <sharath.srinivasan@oracle.com>

Thanks,
Sharath

> ---
>   net/rds/connection.c | 1 +
>   1 file changed, 1 insertion(+)
>
> diff --git a/net/rds/connection.c b/net/rds/connection.c
> index a3bc4b54d491..b4cc699c5fad 100644
> --- a/net/rds/connection.c
> +++ b/net/rds/connection.c
> @@ -253,6 +253,7 @@ static struct rds_connection *__rds_conn_create(struct net *net,
>   				 * should end up here, but if it
>   				 * does, reset/destroy the connection.
>   				 */
> +				kfree(conn->c_path);
>   				kmem_cache_free(rds_conn_slab, conn);
>   				conn = ERR_PTR(-EOPNOTSUPP);
>   				goto out;
patchwork-bot+netdevbpf@kernel.org Dec. 14, 2021, 1 p.m. UTC | #2
Hello:

This patch was applied to netdev/net.git (master)
by David S. Miller <davem@davemloft.net>:

On Tue, 14 Dec 2021 18:46:59 +0800 you wrote:
> __rds_conn_create() did not release conn->c_path when loop_trans != 0 and
> trans->t_prefer_loopback != 0 and is_outgoing == 0.
> 
> Signed-off-by: Hangyu Hua <hbh25y@gmail.com>
> ---
>  net/rds/connection.c | 1 +
>  1 file changed, 1 insertion(+)

Here is the summary with links:
  - [net] rds: memory leak in __rds_conn_create()
    https://git.kernel.org/netdev/net/c/5f9562ebe710

You are awesome, thank you!
Santosh Shilimkar Dec. 14, 2021, 5:39 p.m. UTC | #3
> On Dec 14, 2021, at 2:46 AM, Hangyu Hua <hbh25y@gmail.com> wrote:
> 
> __rds_conn_create() did not release conn->c_path when loop_trans != 0 and
> trans->t_prefer_loopback != 0 and is_outgoing == 0.
> 
> Signed-off-by: Hangyu Hua <hbh25y@gmail.com>
> ---
> net/rds/connection.c | 1 +
> 1 file changed, 1 insertion(+)

Looks good to me. Thanks !!

Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
diff mbox series

Patch

diff --git a/net/rds/connection.c b/net/rds/connection.c
index a3bc4b54d491..b4cc699c5fad 100644
--- a/net/rds/connection.c
+++ b/net/rds/connection.c
@@ -253,6 +253,7 @@  static struct rds_connection *__rds_conn_create(struct net *net,
 				 * should end up here, but if it
 				 * does, reset/destroy the connection.
 				 */
+				kfree(conn->c_path);
 				kmem_cache_free(rds_conn_slab, conn);
 				conn = ERR_PTR(-EOPNOTSUPP);
 				goto out;