From patchwork Tue Jun 12 04:41:41 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhouyang Jia X-Patchwork-Id: 10459269 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 2283B601A0 for ; Tue, 12 Jun 2018 04:42:06 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 121EB2863B for ; Tue, 12 Jun 2018 04:42:06 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 06BBB28640; Tue, 12 Jun 2018 04:42:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B17752863B for ; Tue, 12 Jun 2018 04:42:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933045AbeFLEly (ORCPT ); Tue, 12 Jun 2018 00:41:54 -0400 Received: from mail-pl0-f66.google.com ([209.85.160.66]:33474 "EHLO mail-pl0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933032AbeFLElu (ORCPT ); Tue, 12 Jun 2018 00:41:50 -0400 Received: by mail-pl0-f66.google.com with SMTP id n10-v6so13617150plp.0; Mon, 11 Jun 2018 21:41:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=f4m7qOyaTR8jMyJ06iiLVjF3E3BsAYkyrEs4pmCan1U=; b=nTiZw4UQwL+3kBUopBe2mFsbm3W4+noSqpnXI8H1PfPeTxYxgChk+2qjgoSx4eqrac FQUsd7yI/t7/b/2YVOY9DCFADz2IUOwugccMPUQ9Hz8SxTT6OV3U7TL/LpeuRl4k30tN nTbXsHSSHHVuyypTlKlW6JjdtiFZyshvfy035WU0tPX6UBkdZaB2U6SwAcz5WGO0w1ee 28Z7c9+u88k6HAY+wgEarEkdHDkPhAvgD2WqsEIaZaDhtPyInj2ArPRZeJLx43LTMTFt IycZVT+CYDWYZDhWXXVOdiW4vxFO41ppSSSVjqP45wkjuUfEgcGJ3B5BYOuLeqtDFdWg SCuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=f4m7qOyaTR8jMyJ06iiLVjF3E3BsAYkyrEs4pmCan1U=; b=q0gaUO/zCfSDlS9U6SZorFgi5nk3JO6uKBNvQ3oDVriRV3onFdhBTwBba3MHy244tC yYhVack4Z2BHDrfBUrr9r7D/nry/EaPMNcX+bwXHK7o7CnUUk4fKhfJi3CmnEY9zRYC5 VnVyE9tu4W1DYdLPv6FgPf+UiUacLQq02R6B1/TBvnNo3W/H65TWR/0DOeLBXgHYFtPP 6qVtBpmQrCrgD+igG9l5JVQNyUXheG2JFeeSoGvhVYHRimydWzURp5A2Gpt3KYX+RHXP LnYcgz/9nLSczk4I8njeLsCdnAwNmssvkxntAPoQgBTF1rLJmyOVStMj9OkLkqTkWbif zu0w== X-Gm-Message-State: APt69E1jO8k7A5a/o2q3zZZSaIL9Auf0R3JjfIUEpvOHwoHxtBtQxtu/ BK75lYfnNq/kZZCWhjurdoY= X-Google-Smtp-Source: ADUXVKInm489ooTjwK86eOc4TXMWBvbQbcBK1jDunLJpvtKngCPT8yNgD30K/1mExHnlzcupsJC7qA== X-Received: by 2002:a17:902:1023:: with SMTP id b32-v6mr2287037pla.145.1528778509759; Mon, 11 Jun 2018 21:41:49 -0700 (PDT) Received: from localhost ([103.88.46.82]) by smtp.gmail.com with ESMTPSA id c12-v6sm41445781pfi.177.2018.06.11.21.41.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 11 Jun 2018 21:41:49 -0700 (PDT) From: Zhouyang Jia Cc: Zhouyang Jia , Felipe Balbi , Greg Kroah-Hartman , Bhumika Goyal , Johan Hovold , Andrew Gabbasov , David Lechner , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] usb: gadget: add error handling for skb_realloc_headroom Date: Tue, 12 Jun 2018 12:41:41 +0800 Message-Id: <1528778503-41615-1-git-send-email-jiazhouyang09@gmail.com> X-Mailer: git-send-email 2.7.4 To: unlisted-recipients:; (no To-header on input) Sender: linux-usb-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP When skb_realloc_headroom fails, the lack of error-handling code may cause unexpected results. This patch adds error-handling code after calling skb_realloc_headroom. Signed-off-by: Zhouyang Jia --- drivers/usb/gadget/function/f_rndis.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/usb/gadget/function/f_rndis.c b/drivers/usb/gadget/function/f_rndis.c index d48df36..17c164b 100644 --- a/drivers/usb/gadget/function/f_rndis.c +++ b/drivers/usb/gadget/function/f_rndis.c @@ -374,6 +374,9 @@ static struct sk_buff *rndis_add_header(struct gether *port, return NULL; skb2 = skb_realloc_headroom(skb, sizeof(struct rndis_packet_msg_type)); + if (!skb2) + return NULL; + rndis_add_hdr(skb2); dev_kfree_skb(skb);