From patchwork Tue Dec 25 07:56:14 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kangjie Lu X-Patchwork-Id: 1018360 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@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; dmarc=pass (p=none dis=none) header.from=umn.edu Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=umn.edu header.i=@umn.edu header.b="g6uJWkro"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 43P7jc1vnJz9sC7 for ; Tue, 25 Dec 2018 18:57:08 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725873AbeLYH4r (ORCPT ); Tue, 25 Dec 2018 02:56:47 -0500 Received: from mta-p5.oit.umn.edu ([134.84.196.205]:57952 "EHLO mta-p5.oit.umn.edu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725827AbeLYH4q (ORCPT ); Tue, 25 Dec 2018 02:56:46 -0500 Received: from localhost (unknown [127.0.0.1]) by mta-p5.oit.umn.edu (Postfix) with ESMTP id 89F07BC4 for ; Tue, 25 Dec 2018 07:56:45 +0000 (UTC) X-Virus-Scanned: amavisd-new at umn.edu Received: from mta-p5.oit.umn.edu ([127.0.0.1]) by localhost (mta-p5.oit.umn.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9IWz5hOVciDy for ; Tue, 25 Dec 2018 01:56:45 -0600 (CST) Received: from mail-it1-f197.google.com (mail-it1-f197.google.com [209.85.166.197]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mta-p5.oit.umn.edu (Postfix) with ESMTPS id 572A9B23 for ; Tue, 25 Dec 2018 01:56:45 -0600 (CST) Received: by mail-it1-f197.google.com with SMTP id 135so16303812itk.5 for ; Mon, 24 Dec 2018 23:56:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=umn.edu; s=google; h=from:to:cc:subject:date:message-id; bh=DozcSpvbKGa4uPyQGyDlYfvnPqBrqf2D6i8rY2y1aJo=; b=g6uJWkroYTjEjEr0DMeJijL9vZYD9fnU0kMeXzteCFbtwwAGR2vQR+HIiiJq1wlzVh KEmz0TdqsLPMLEhtwnudIUgYywn4pEhf45Laxity1P+iwma853RHPMw4pqjKBtiGIdP4 fjQSszINUE+TrVUseQ1TN0z4jtzsgO6DriwOxjjywUUGk5I2RsUilJ1u9qP3PYaOzz4n nGoQLGAD9oL+NE6im06RuE68IqN0d0KWoJiu3NCrFM/KATvM2yNaZIEdKP8KPwmg6FMf F1e/kyJhuEvWyFnPiEGwsZL5mGecwalXeVIb3s6l4B0HeyidESd63KQU2fPuTQQNxB4H oC4g== 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=DozcSpvbKGa4uPyQGyDlYfvnPqBrqf2D6i8rY2y1aJo=; b=NFljkV5ymJSGfW2qAC6KhMv1aVQ3tJSc0BUCbtJoWcoV1RGbFa3+TDY6KEGE80nUVq moNAzoLwopr5h2L3IwMSEO6imt3N4iZzSEmVNadgMdPuxcj/ek0Vxec4HXlAJP/5o5ew Y62vhKXrHnZTaqEMVtpy9ky2s3FgCdxY75vfQ2eiAyVkZjfrK63sQpn9WEihepLJ65uI 42WI4UT6BGk3JtP7RBujfmfTMZzQHmUwif2xXdgw9MjgTbLhGPkXRC3HOViT9R/joxEH M8QofTHGUifTUrf4/PwMnBd+++5wZYQU+naIAS7n+ukZBUFJ/XJu5nzBxD7z2TChFWxr 4AoQ== X-Gm-Message-State: AJcUukc/PlxWlHBZV88QILeXCx5TpglYt55PJgjU7UKoy723/cNh/mgn WCVqHWX3Hxug6vqvqMEbrmxAwYIB9lC8iAFFw7pw7Bu1ew5Sd/w8WuL8V5xnCtJe3ZEq/VdLp+0 jTHlDLPPbyTyXHNOKWZ9N X-Received: by 2002:a6b:e019:: with SMTP id z25mr7317225iog.237.1545724604308; Mon, 24 Dec 2018 23:56:44 -0800 (PST) X-Google-Smtp-Source: ALg8bN46u5azByN6/vqtZtV58NZRtSP+iYz+QHPzXjC/Cv+3/XgUKRLeFn2i1xNFsVnh5vkuxa25LA== X-Received: by 2002:a6b:e019:: with SMTP id z25mr7317211iog.237.1545724604103; Mon, 24 Dec 2018 23:56:44 -0800 (PST) Received: from localhost.localdomain (host-173-230-104-22.mnmigsc.mn.minneapolis.us.clients.pavlovmedia.net. [173.230.104.22]) by smtp.gmail.com with ESMTPSA id o74sm9621215itc.44.2018.12.24.23.56.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 24 Dec 2018 23:56:43 -0800 (PST) From: Kangjie Lu To: kjlu@umn.edu Cc: pakki001@umn.edu, "David S. Miller" , Shannon Nelson , Colin Ian King , Rob Taglang , Joe Perches , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] ethernet: (niu) fix missing checks of niu_pci_eeprom_read Date: Tue, 25 Dec 2018 01:56:14 -0600 Message-Id: <20181225075617.68058-1-kjlu@umn.edu> X-Mailer: git-send-email 2.17.2 (Apple Git-113) Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org niu_pci_eeprom_read() may fail, so we should check its return value before using the read data. Signed-off-by: Kangjie Lu Acked-by: Shannon Nelson --- drivers/net/ethernet/sun/niu.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/sun/niu.c b/drivers/net/ethernet/sun/niu.c index 9319d84bf49f..d84501441edd 100644 --- a/drivers/net/ethernet/sun/niu.c +++ b/drivers/net/ethernet/sun/niu.c @@ -8100,6 +8100,8 @@ static int niu_pci_vpd_scan_props(struct niu *np, u32 start, u32 end) start += 3; prop_len = niu_pci_eeprom_read(np, start + 4); + if (prop_len < 0) + return prop_len; err = niu_pci_vpd_get_propname(np, start + 5, namebuf, 64); if (err < 0) return err; @@ -8144,8 +8146,12 @@ static int niu_pci_vpd_scan_props(struct niu *np, u32 start, u32 end) netif_printk(np, probe, KERN_DEBUG, np->dev, "VPD_SCAN: Reading in property [%s] len[%d]\n", namebuf, prop_len); - for (i = 0; i < prop_len; i++) - *prop_buf++ = niu_pci_eeprom_read(np, off + i); + for (i = 0; i < prop_len; i++) { + err = niu_pci_eeprom_read(np, off + i); + if (err >= 0) + *prop_buf = err; + ++prop_buf; + } } start += len;