Received: by 2002:a05:6358:16cc:b0:ea:6187:17c9 with SMTP id r12csp1726306rwl; Mon, 26 Dec 2022 04:00:18 -0800 (PST) X-Google-Smtp-Source: AMrXdXtM9pT46kLKQqt9KZuZhIJIb7Ye8MxgFv+vWOe6gvE4flM452Ijc20eHnqBbwH1+D16TE3O X-Received: by 2002:a17:907:93c5:b0:7ad:e255:9238 with SMTP id cp5-20020a17090793c500b007ade2559238mr13676614ejc.21.1672056018744; Mon, 26 Dec 2022 04:00:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672056018; cv=none; d=google.com; s=arc-20160816; b=wMiyxvr9e1ciDAvpFJccalxCOqyRxrtpL9PBiJO699M8Bn+B+0WRDN4mIP/JBUpQ1N 5TzKzsnLJ5Rf43wIET56kFBYWwW8zNVAulVmRDKqBh3LS5Ijy4EJkOQDP4wlSZ/G3ViB SU3jGpHLdxDMFDzjVqPT3A1KoSUL3XXSz3DB+RsAxS0L4J5R2+j6GX1KBdzqLfWqwsYJ QcZpKhReRES7N232sFBX3auSOH3ewcGX1VJweLizz47y580JtYRTRyWGyte/fE2stK59 51441sWFnl0Ywz5ZUnO0L7pPYVkb7Nf71a7ZpBXl+i1DTZrC9TinyE/jZQ3fOCT70/qC RiZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=Bc0UQBiLcPIeNMMXHPDirTDhvMlEZMdLdU3YkqOgz/I=; b=kRrASGYI6SR38+CFk53rDoPkuCdBUPD+yUe5OFNIRIItNC7YMoVxHEHtMZB45IsymK 6ksbTaHYFw77WLJ9X4+pnUGCVOa/vOkVX5ACjHZIRVYv17obQtaB0j1zikL2OEsXttkx jU3URT77S+m9bcoK0b6GVTBeaDql+MGNT4yaDExMURK2xi+OFtyk59nVhB818G8IqgeS +IFLKtAbGffyVxn73+tuxjStpgh2xBL7OF5KjDSKhm4oqn4KHDm6NZSBG3QB/HqusHGv qdW4I/qWLBIWkXheksh5gce27A+cWhr1x+DQac6/lggNuqepe8IEKhAuHlgIo57OOYcc 3/TQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@yandex-team.ru header.s=default header.b=N5T9G93z; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=yandex-team.ru Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q14-20020a056402248e00b004859d0f61e0si992202eda.380.2022.12.26.04.00.02; Mon, 26 Dec 2022 04:00:18 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@yandex-team.ru header.s=default header.b=N5T9G93z; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=yandex-team.ru Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231665AbiLZLs5 (ORCPT + 66 others); Mon, 26 Dec 2022 06:48:57 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33862 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229960AbiLZLso (ORCPT ); Mon, 26 Dec 2022 06:48:44 -0500 Received: from forwardcorp1a.mail.yandex.net (forwardcorp1a.mail.yandex.net [178.154.239.72]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0AF2EF34; Mon, 26 Dec 2022 03:48:43 -0800 (PST) Received: from vla1-81430ab5870b.qloud-c.yandex.net (vla1-81430ab5870b.qloud-c.yandex.net [IPv6:2a02:6b8:c0d:35a1:0:640:8143:ab5]) by forwardcorp1a.mail.yandex.net (Yandex) with ESMTP id 7E5585FCCF; Mon, 26 Dec 2022 14:48:42 +0300 (MSK) Received: from d-tatianin-nix.yandex-team.ru (unknown [2a02:6b8:b081:1::1:f]) by vla1-81430ab5870b.qloud-c.yandex.net (smtpcorp/Yandex) with ESMTPSA id SmMqpV0Q0uQ1-ma6jHp3e; Mon, 26 Dec 2022 14:48:41 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex-team.ru; s=default; t=1672055322; bh=Bc0UQBiLcPIeNMMXHPDirTDhvMlEZMdLdU3YkqOgz/I=; h=Message-Id:Date:In-Reply-To:Cc:Subject:References:To:From; b=N5T9G93zwobBipUq19jbhhBmDj8j0GgPwems6oUkB37L7dASt/SC/y8DdxCdz/DXx ZCWqVzQhJ6XOaVACPADlS/nCNQOQQzE9hVV2tEyj6CSFlW+qGu6MGuZny51XgOXiu6 HE4zINwgOn+Ld1rA8mXZLtYchhOBP8U6hUdRMBKQ= Authentication-Results: vla1-81430ab5870b.qloud-c.yandex.net; dkim=pass header.i=@yandex-team.ru From: Daniil Tatianin To: "David S. Miller" Cc: Daniil Tatianin , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Andrew Lunn , Sean Anderson , Jiri Pirko , Wolfram Sang , Maxim Korotkov , Gal Pressman , Vincent Mailhol , Tom Rix , Marco Bonelli , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net v2 2/3] net/ethtool/ioctl: remove if n_stats checks from ethtool_get_phy_stats Date: Mon, 26 Dec 2022 14:48:24 +0300 Message-Id: <20221226114825.1937189-3-d-tatianin@yandex-team.ru> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221226114825.1937189-1-d-tatianin@yandex-team.ru> References: <20221226114825.1937189-1-d-tatianin@yandex-team.ru> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Now that we always early return if we don't have any stats we can remove these checks as they're no longer necessary. Signed-off-by: Daniil Tatianin Reviewed-by: Andrew Lunn --- net/ethtool/ioctl.c | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/net/ethtool/ioctl.c b/net/ethtool/ioctl.c index e8a294b38b7b..3379af21c29f 100644 --- a/net/ethtool/ioctl.c +++ b/net/ethtool/ioctl.c @@ -2101,28 +2101,24 @@ static int ethtool_get_phy_stats(struct net_device *dev, void __user *useraddr) stats.n_stats = n_stats; - if (n_stats) { - data = vzalloc(array_size(n_stats, sizeof(u64))); - if (!data) - return -ENOMEM; + data = vzalloc(array_size(n_stats, sizeof(u64))); + if (!data) + return -ENOMEM; - if (phydev && !ops->get_ethtool_phy_stats && - phy_ops && phy_ops->get_stats) { - ret = phy_ops->get_stats(phydev, &stats, data); - if (ret < 0) - goto out; - } else { - ops->get_ethtool_phy_stats(dev, &stats, data); - } + if (phydev && !ops->get_ethtool_phy_stats && + phy_ops && phy_ops->get_stats) { + ret = phy_ops->get_stats(phydev, &stats, data); + if (ret < 0) + goto out; } else { - data = NULL; + ops->get_ethtool_phy_stats(dev, &stats, data); } ret = -EFAULT; if (copy_to_user(useraddr, &stats, sizeof(stats))) goto out; useraddr += sizeof(stats); - if (n_stats && copy_to_user(useraddr, data, array_size(n_stats, sizeof(u64)))) + if (copy_to_user(useraddr, data, array_size(n_stats, sizeof(u64)))) goto out; ret = 0; -- 2.25.1