From patchwork Tue Dec 5 20:41:17 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Subash Abhinov Kasiviswanathan X-Patchwork-Id: 844923 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=codeaurora.org header.i=@codeaurora.org header.b="X48htDqV"; dkim=pass (1024-bit key) header.d=codeaurora.org header.i=@codeaurora.org header.b="X48htDqV"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yrtyP0xRZz9s7B for ; Wed, 6 Dec 2017 07:44:13 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751945AbdLEUnv (ORCPT ); Tue, 5 Dec 2017 15:43:51 -0500 Received: from smtp.codeaurora.org ([198.145.29.96]:34652 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751112AbdLEUnr (ORCPT ); Tue, 5 Dec 2017 15:43:47 -0500 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id CA1DC60819; Tue, 5 Dec 2017 20:43:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1512506626; bh=m50ZjdhvWFUtQ6uWA5K52pzd/D1DonzAvbf6Ur+251o=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=X48htDqVwLbfY/YVjRL54zMljPTTjglbbkJniwfKQHHkiV/BJmLbUwFr6/JZORbkG WtPoG8IgFvRAKs3t+guYm9N9QDm1/ZIXEuHy2XH8grink3+vbvMawu4DCP1sQWhfdu p+/2jpNP7gSRFBmhcgYs9iJqe/H5bDOImgrLkK5o= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from subashab-lnx.qualcomm.com (unknown [129.46.15.92]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: subashab@codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 1921B6034E; Tue, 5 Dec 2017 20:43:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1512506626; bh=m50ZjdhvWFUtQ6uWA5K52pzd/D1DonzAvbf6Ur+251o=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=X48htDqVwLbfY/YVjRL54zMljPTTjglbbkJniwfKQHHkiV/BJmLbUwFr6/JZORbkG WtPoG8IgFvRAKs3t+guYm9N9QDm1/ZIXEuHy2XH8grink3+vbvMawu4DCP1sQWhfdu p+/2jpNP7gSRFBmhcgYs9iJqe/H5bDOImgrLkK5o= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 1921B6034E Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=subashab@codeaurora.org From: Subash Abhinov Kasiviswanathan To: davem@davemloft.net, netdev@vger.kernel.org Cc: Subash Abhinov Kasiviswanathan Subject: [PATCH net 1/2] net: qualcomm: rmnet: Fix leak on transmit failure Date: Tue, 5 Dec 2017 13:41:17 -0700 Message-Id: <1512506478-9113-2-git-send-email-subashab@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1512506478-9113-1-git-send-email-subashab@codeaurora.org> References: <1512506478-9113-1-git-send-email-subashab@codeaurora.org> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org If a skb in transmit path does not have sufficient headroom to add the map header, the skb is not sent out and is never freed. Fixes: ceed73a2cf4a ("drivers: net: ethernet: qualcomm: rmnet: Initial implementation") Signed-off-by: Subash Abhinov Kasiviswanathan --- drivers/net/ethernet/qualcomm/rmnet/rmnet_handlers.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/qualcomm/rmnet/rmnet_handlers.c b/drivers/net/ethernet/qualcomm/rmnet/rmnet_handlers.c index f7d1744..ea0d986 100644 --- a/drivers/net/ethernet/qualcomm/rmnet/rmnet_handlers.c +++ b/drivers/net/ethernet/qualcomm/rmnet/rmnet_handlers.c @@ -133,12 +133,12 @@ static int rmnet_map_egress_handler(struct sk_buff *skb, if (skb_headroom(skb) < required_headroom) { if (pskb_expand_head(skb, required_headroom, 0, GFP_KERNEL)) - return RMNET_MAP_CONSUMED; + goto fail; } map_header = rmnet_map_add_map_header(skb, additional_header_len, 0); if (!map_header) - return RMNET_MAP_CONSUMED; + goto fail; if (port->egress_data_format & RMNET_EGRESS_FORMAT_MUXING) { if (mux_id == 0xff) @@ -150,6 +150,10 @@ static int rmnet_map_egress_handler(struct sk_buff *skb, skb->protocol = htons(ETH_P_MAP); return RMNET_MAP_SUCCESS; + +fail: + kfree_skb(skb); + return RMNET_MAP_CONSUMED; } static void From patchwork Tue Dec 5 20:41:18 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Subash Abhinov Kasiviswanathan X-Patchwork-Id: 844922 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=codeaurora.org header.i=@codeaurora.org header.b="S+r3Mmwr"; dkim=pass (1024-bit key) header.d=codeaurora.org header.i=@codeaurora.org header.b="oXymjwCV"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yrtyK0Hq1z9s7B for ; Wed, 6 Dec 2017 07:44:09 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752035AbdLEUnz (ORCPT ); Tue, 5 Dec 2017 15:43:55 -0500 Received: from smtp.codeaurora.org ([198.145.29.96]:34718 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751628AbdLEUns (ORCPT ); Tue, 5 Dec 2017 15:43:48 -0500 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 4E1606081F; Tue, 5 Dec 2017 20:43:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1512506628; bh=UBq6XCffiHy53gmYenkYLYX5V75+AjRMF2FqII/jr08=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=S+r3MmwrlaSox0y7vGWuirQx504MnXDY2SdD/uZbx+gM7mwfh6ye86qw2UXUaYw1+ sr9DxpnwwbmElOIBojueFpHQsSDCUaOoOLcrr1mOfJ/0Jbo59xn+CMpBU40LLxzUgC pzUZzCIetQPOuLnBPaXWFqIIDhiEBAArVsNGuISo= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from subashab-lnx.qualcomm.com (unknown [129.46.15.92]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: subashab@codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 87E0F6034E; Tue, 5 Dec 2017 20:43:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1512506627; bh=UBq6XCffiHy53gmYenkYLYX5V75+AjRMF2FqII/jr08=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=oXymjwCVo8t4+BmnhXgHa0OIK4R8c50X2qzcXwSQzYSK5QHAijKOUz+QhTCp7xljr zpSOJ3VeTlkxRNf4xr6+6/PgjCtxMfT32kysSKZLFHl9dwxsP2ni2/P2tpu+s58o+b 7UBd3ceO+pLgVzMtIcUvYEjVmQHOghuXuwLBPcto= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 87E0F6034E Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=subashab@codeaurora.org From: Subash Abhinov Kasiviswanathan To: davem@davemloft.net, netdev@vger.kernel.org Cc: Subash Abhinov Kasiviswanathan Subject: [PATCH net 2/2] net: qualcomm: rmnet: Fix leak in device creation failure Date: Tue, 5 Dec 2017 13:41:18 -0700 Message-Id: <1512506478-9113-3-git-send-email-subashab@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1512506478-9113-1-git-send-email-subashab@codeaurora.org> References: <1512506478-9113-1-git-send-email-subashab@codeaurora.org> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org If the rmnet device creation fails in the newlink either while registering with the physical device or after subsequent operations, the rmnet endpoint information is never freed. Fixes: ceed73a2cf4a ("drivers: net: ethernet: qualcomm: rmnet: Initial implementation") Signed-off-by: Subash Abhinov Kasiviswanathan --- drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c b/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c index 71bee1a..df21e90 100644 --- a/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c +++ b/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c @@ -195,6 +195,7 @@ static int rmnet_newlink(struct net *src_net, struct net_device *dev, err1: rmnet_unregister_real_device(real_dev, port); err0: + kfree(ep); return err; }