From patchwork Thu May 19 19:20:55 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 624211 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3r9gwd6bKLz9t3r for ; Fri, 20 May 2016 05:24:01 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754127AbcESTXn (ORCPT ); Thu, 19 May 2016 15:23:43 -0400 Received: from mout.gmx.net ([212.227.17.21]:62709 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752727AbcESTXl (ORCPT ); Thu, 19 May 2016 15:23:41 -0400 Received: from workstation4.fritz.box ([62.143.92.134]) by mail.gmx.com (mrgmx103) with ESMTPSA (Nemesis) id 0MegeC-1bEXEa3wQy-00OHJj; Thu, 19 May 2016 21:23:01 +0200 From: Heinrich Schuchardt To: "David S. Miller" Cc: David Laight , Yisen Zhuang , Kejian Yan , Lisheng , Andrew Lunn , Salil , Ivan Vecera , Chenny Xu , huangdaode , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Heinrich Schuchardt Subject: [PATCH v2 1/1] net: hns: avoid null pointer dereference Date: Thu, 19 May 2016 21:20:55 +0200 Message-Id: <1463685655-3277-1-git-send-email-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.1.4 In-Reply-To: <063D6719AE5E284EB5DD2968C1650D6D5F4C22D9@AcuExch.aculab.com> References: <063D6719AE5E284EB5DD2968C1650D6D5F4C22D9@AcuExch.aculab.com> X-Provags-ID: V03:K0:23nmGovov+pOb6qKZEFCBYJY3QuBWqnFWqJy1ZDNeZVmFGSv1A8 dtbkp3VG1tht1D8RWx7r5jvYSxq44DT2JQISx81+QKPxoAaobCZ5ulvzBb4vl1rvm++QM6H 34/2dBktwN/14aSlMS/DB1EciQ/NGrJ1zi4prrT+7oD0QWeb5f+ld0DIYBK+6LuG82k83BV uFFK1eKG5RHUciMANnKeA== X-UI-Out-Filterresults: notjunk:1; V01:K0:aZWsxUdO9dk=:xnsiiL8dvmOYvnU2fP8wFJ wNB7CibrcksBXzGilal4sSRNc35+dfm2zWYEibQgI1wdizOpvI64lL4Kf4rjcoWJju7ECGtWc OZiQwJspXe19X+tfH7ytmm394nI1pR11Bc3vtP6Et/BlO9VULneAaAJObos5vXwBgQM+hHsMK bckNnqfBTtDa/ZxSMsebjWemOO0fub5lhZs2EgmLsQ7BDy54E8dwxoixcN4Cwb4cHHIWht4ME j/74nzXwTLE224S3SYCJoQW1utQPoPDEgi0ZiD+DQkId9LuwleY9q8DwlH12YIgxfO7rseRVU 64V14TvQNMw1I+DxVMVaH3ylaTqWemas1XkjASI+Y+FL1c1hw4sfUBjxP7lJtM4YPMS3k8iHv KRgy5gz0vdJJMuPzz6sygnNItgdU60G7rzCNhC1OFplEa28+TWEamc5GqKPhii1bY/a6D7vmq DPPTJPrGT3Is4iuKt2ojWdVkOzCnOHvqcRpPSzy5fci9LKXdyvvK+Ip5Q8SyIplcjnOYpjek/ SV9WVo94obX6edEpBV52coLrZrVgt9Iv1CAH/PQgOmWplZrYPMEtDyhq66EV8ZdGAy0DQZHD+ /br96nvhZoVihdaSgTODlsL6G6Jl/xGeuBtH7PpIF2ONJc+gUrLNbaK8WDJsGzzxhCVOkfLj0 hFEpoDf0p0Rhj5cEoBYNxat4NWZUMk3/i0nDDW3Lge0qZVLwO+pH/0L09rYmgbXT74OF2jNeO +hWPhvhivRe2nb2PzUebBPcmXhkBrhW+R/QVXCAoakqNNU5waZIN64IByPMVmyHb8r6arQUFP bPK0sx4KYcROD5dWo+YuYwRJ8+z7Q== Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org In the statement assert(priv || priv->ae_handle); the right side of || is only evaluated if priv is null. v2: As suggested by David Leight and David Miller the assert statements are removed. Signed-off-by: Heinrich Schuchardt --- drivers/net/ethernet/hisilicon/hns/hns_ethtool.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c index 3d746c8..67a648c 100644 --- a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c +++ b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c @@ -46,7 +46,6 @@ static u32 hns_nic_get_link(struct net_device *net_dev) u32 link_stat = priv->link; struct hnae_handle *h; - assert(priv && priv->ae_handle); h = priv->ae_handle; if (priv->phy) { @@ -646,8 +645,6 @@ static void hns_nic_get_drvinfo(struct net_device *net_dev, { struct hns_nic_priv *priv = netdev_priv(net_dev); - assert(priv); - strncpy(drvinfo->version, HNAE_DRIVER_VERSION, sizeof(drvinfo->version)); drvinfo->version[sizeof(drvinfo->version) - 1] = '\0'; @@ -720,8 +717,6 @@ static int hns_set_pauseparam(struct net_device *net_dev, struct hnae_handle *h; struct hnae_ae_ops *ops; - assert(priv || priv->ae_handle); - h = priv->ae_handle; ops = h->dev->ops; @@ -780,8 +775,6 @@ static int hns_set_coalesce(struct net_device *net_dev, struct hnae_ae_ops *ops; int ret; - assert(priv || priv->ae_handle); - ops = priv->ae_handle->dev->ops; if (ec->tx_coalesce_usecs != ec->rx_coalesce_usecs) @@ -1111,8 +1104,6 @@ void hns_get_regs(struct net_device *net_dev, struct ethtool_regs *cmd, struct hns_nic_priv *priv = netdev_priv(net_dev); struct hnae_ae_ops *ops; - assert(priv || priv->ae_handle); - ops = priv->ae_handle->dev->ops; cmd->version = HNS_CHIP_VERSION; @@ -1135,8 +1126,6 @@ static int hns_get_regs_len(struct net_device *net_dev) struct hns_nic_priv *priv = netdev_priv(net_dev); struct hnae_ae_ops *ops; - assert(priv || priv->ae_handle); - ops = priv->ae_handle->dev->ops; if (!ops->get_regs_len) { netdev_err(net_dev, "ops->get_regs_len is null!\n");