Received: by 2002:ac0:950c:0:0:0:0:0 with SMTP id f12csp1837850imc; Tue, 12 Mar 2019 01:28:55 -0700 (PDT) X-Google-Smtp-Source: APXvYqyg2yhH7UPdc5PzTb4+UkxXVkJC5r8szJVu2wCkmD6ToisLofU1behb5s7xKmjeXmlxCPts X-Received: by 2002:a17:902:16a4:: with SMTP id h33mr39135286plh.107.1552379335630; Tue, 12 Mar 2019 01:28:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1552379335; cv=none; d=google.com; s=arc-20160816; b=W6e3cpwnrsGWDIDAx6UY79z6Lr39mmrfaZGAQ4yFDuet6MIzU18ia+9f27U3q+G+bX H/2VM/46AWrBxQbYIR1Flt4IWL1MW9qhxacbPgzylx+AQjy6wdKzhAZK8dHMVCz+R1i0 ch/DS6E9lSbipI1IJEu20Rc2BRqhatuK6kOzNU6VNmu2LlnEPwE9ylqHhxJQOakzH9wa IDfy0V660On7+8AWNK2/UM3I0lAcGGJq2SUORrkkjsWDII2m5K/Bo3cHiiRAwTxr9QEa eS0yZtvEGtbDTlIZQUxfDQpEDMVRgxIrg76AAyve99wOWMNWu4C44A1EumiA+0XmqocK 1hAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=a4jPWByrK92VDg4NmK8GgvK/F605adGcRX376C2YJ18=; b=BUkkjDC5eYD8GPChyLWxyOmzxQdazi3JlD9Cp3wCBfNIYiUbA/LYtHdBtyKK5JqIbl n/t30I8fCwBdXtfH9u8wKtJ12EBIgzmvx5kVR9QmnwGuu7JcXGAgx24155C2EUPrmcvR qAwODTUrYXevWXfLxuc71csrBXZHLC9HxqDRdd+tMnRvxudQPLNM638liJ2JvBeFm0Cn Ep/t+5sUHktl6meNPveyMcoKHk1B/1EAnB34kH7gN0ptWSIy0ANrj6rSHeWhaHBw0kfc RHKu1+cVRTOkTLUI2w1y0Ub7KsxzLvKrQkCDVIV6lgexzFJn7HW4sok9Cb5MgawbnOcM q10Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=lEiabhXN; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id gn14si7467427plb.171.2019.03.12.01.28.39; Tue, 12 Mar 2019 01:28:55 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=lEiabhXN; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727542AbfCLI2R (ORCPT + 99 others); Tue, 12 Mar 2019 04:28:17 -0400 Received: from mail.kernel.org ([198.145.29.99]:45866 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726735AbfCLI2Q (ORCPT ); Tue, 12 Mar 2019 04:28:16 -0400 Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 08A772171F; Tue, 12 Mar 2019 08:28:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1552379296; bh=jZirjo9XoP+WJTKzvU1KMFFOPs9e6fF0EwD5ghYcX80=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=lEiabhXNrjc+vUb1pKGa24aEELX3M0nxIdhPwRivSuiBEIRaPcicamJ9UHJElYKfE CPk6/t+HCVPJ89wEpbeFOiNcXL4sPfY2/jTgYq4pH8EutTmG+izWJWpa7rMJxwLBRM Bp3jmENsoh9jwL5z+7E8bmrrVsaBPTYbUSmJMGGU= Received: by mail-wr1-f49.google.com with SMTP id g18so1655834wru.3; Tue, 12 Mar 2019 01:28:15 -0700 (PDT) X-Gm-Message-State: APjAAAUe8lepWUHiR2Wi6cxGwhnCcho7RB+3ez+x6jiYrqddbki9Rquw kZMCZhoq4dmz25EuTowHeACwLIp8l3PjBgKVE18= X-Received: by 2002:a5d:4741:: with SMTP id o1mr3694066wrs.188.1552379294450; Tue, 12 Mar 2019 01:28:14 -0700 (PDT) MIME-Version: 1.0 References: <20190312073241.27495-1-kjlu@umn.edu> In-Reply-To: <20190312073241.27495-1-kjlu@umn.edu> From: Chen-Yu Tsai Date: Tue, 12 Mar 2019 16:28:01 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] net: stmmac: fix a potential NULL pointer dereference To: Kangjie Lu Cc: Alexandre Torgue , netdev , linux-kernel , linux-stm32@st-md-mailman.stormreply.com, Jose Abreu , Maxime Coquelin , pakki001@umn.edu, Giuseppe Cavallaro , "David S. Miller" , linux-arm-kernel Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 12, 2019 at 3:32 PM Kangjie Lu wrote: > > In case of_device_get_match_data fails, the fix return -ENOMEM > to avoid the NULL pointer dereference. > > Signed-off-by: Kangjie Lu > --- > drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c > index 3256e5cbad27..344ead5949b1 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c > @@ -485,6 +485,8 @@ static int dwc_eth_dwmac_remove(struct platform_device *pdev) > int err; > > data = of_device_get_match_data(&pdev->dev); > + if (!data) > + return -EINVAL; You say -ENOMEM in the commit message, but -EINVAL here. Also, all compatible strings within this driver have data attached to them. The only possible case for this to return NULL is if the user is screwing around with the kernel, such as creating a platform device matching the driver name. This is not the intended way to use it, and IMHO the kernel has the right to blow up in the user's face. ChenYu > > err = stmmac_dvr_remove(&pdev->dev); > if (err < 0) > -- > 2.17.1 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel