Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp3659789ybt; Tue, 30 Jun 2020 08:18:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzVHNQSpRQB5TmV1whFYCvsT7oNtndUsALdjFxICPguVf573hCQJMWuJZg062a3KAnL1l9x X-Received: by 2002:a17:906:7115:: with SMTP id x21mr18423587ejj.86.1593530327912; Tue, 30 Jun 2020 08:18:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593530327; cv=none; d=google.com; s=arc-20160816; b=o1LPD8dQn5W5hfZeUrPZ9mSKHnZfujh2WSOb/lgB5Po4PJAtrcAAyVSzKQ1Mnv98F8 dudsuJxjpEPHMPMElyhwl/ia3Gefiy9wqQ+ttpkdH46aXZVvgamP9ypX1C0q+HpzFTa1 qxstEbC6j9N35YNhWSwksxF+ofsWbffJ0er7t8XpCfWuVAByvuAmAkr7AqCcdpJGBhjX yBpm2kWR7YvgKlobzuqsfnkD6Xwj5JjdAnyiVuada8crox7jjXQmq+mxedoGaGaHS8EY mI9qnfoB1oPxTokzM2oq5FcKnGOBixuioSAeA7ONxALNz95UrMElZf1JXZM+YSNmx9FK 1S8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=l8unUxKSKKxohAysTHPSYQVn0mMNj/hoOe6E7K9HrLA=; b=I9SgUn6sJNyo95Kb0gtG/DBZmHqISEQFMJxGljxk5RadIwKJC3PISCNcfjYVzvLIDf 5IKhR/zg2bIw0Tl+ARJKxCnRiqTaVBlX9DXn3NNKrFX7hs3ur2FP8akEhw1GDuYfxshH x6/Oq+8V7mt+vmezQxhwj06/Cjdhks29eqHaDkedZN6AzdL0Ctj4wKNrk043uV5Bk24K ZiCC9grfYSMzy9wgs7H0pIdB5/S/KO/36w3c6M2AbKcJm4Z+32YzZXmiRGhwVgk/pNAy fEvtz3VDYqy4ocUlTbYdEpDCLCPeXgKQXqpNllpjqpZ6OZxFwHvV0eehaxvz5gBurD6w Duog== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id du1si2632488ejc.616.2020.06.30.08.18.24; Tue, 30 Jun 2020 08:18:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389361AbgF3PQv (ORCPT + 99 others); Tue, 30 Jun 2020 11:16:51 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:49534 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730027AbgF3PQu (ORCPT ); Tue, 30 Jun 2020 11:16:50 -0400 Received: from 1.general.cking.uk.vpn ([10.172.193.212] helo=localhost) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1jqI06-0003VR-TA; Tue, 30 Jun 2020 15:16:47 +0000 From: Colin King To: Boris Pismenny , Saeed Mahameed , Leon Romanovsky , "David S . Miller" , Jakub Kicinski , Tariq Toukan , netdev@vger.kernel.org, linux-rdma@vger.kernel.org Cc: kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH][next] net/mlx5e: fix memory leak of tls Date: Tue, 30 Jun 2020 16:16:46 +0100 Message-Id: <20200630151646.517757-1-colin.king@canonical.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Colin Ian King The error return path when create_singlethread_workqueue fails currently does not kfree tls and leads to a memory leak. Fix this by kfree'ing tls before returning -ENOMEM. Addresses-Coverity: ("Resource leak") Fixes: 1182f3659357 ("net/mlx5e: kTLS, Add kTLS RX HW offload support") Signed-off-by: Colin Ian King --- drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.c b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.c index 99beb928feff..fee991f5ee7c 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/tls.c @@ -232,8 +232,10 @@ int mlx5e_tls_init(struct mlx5e_priv *priv) return -ENOMEM; tls->rx_wq = create_singlethread_workqueue("mlx5e_tls_rx"); - if (!tls->rx_wq) + if (!tls->rx_wq) { + kfree(tls); return -ENOMEM; + } priv->tls = tls; return 0; -- 2.27.0