From: Bjorn Helgaas <helgaas@kernel.org> To: Jesse Brandeburg <jesse.brandeburg@intel.com>, Tony Nguyen <anthony.l.nguyen@intel.com>, "David S . Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com> Cc: Sasha Neftin <sasha.neftin@intel.com>, netdev@vger.kernel.org, "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>, linux-kernel@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>, intel-wired-lan@lists.osuosl.org, Zheng Yan <zheng.z.yan@intel.com>, Konstantin Khlebnikov <khlebnikov@openvz.org>, Heiner Kallweit <hkallweit1@gmail.com> Subject: [Intel-wired-lan] [PATCH 3/3] igc: Remove redundant runtime resume for ethtool ops Date: Mon, 25 Mar 2024 17:29:51 -0500 [thread overview] Message-ID: <20240325222951.1460656-4-helgaas@kernel.org> (raw) In-Reply-To: <20240325222951.1460656-1-helgaas@kernel.org> From: Bjorn Helgaas <bhelgaas@google.com> 8c5ad0dae93c ("igc: Add ethtool support") added ethtool_ops.begin() and .complete(), which used pm_runtime_get_sync() to resume suspended devices before any ethtool_ops callback and allow suspend after it completed. Subsequently, f32a21376573 ("ethtool: runtime-resume netdev parent before ethtool ioctl ops") added pm_runtime_get_sync() in the dev_ethtool() path, so the device is resumed before any ethtool_ops callback even if the driver didn't supply a .begin() callback. Remove the .begin() and .complete() callbacks, which are now redundant because dev_ethtool() already resumes the device. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> --- drivers/net/ethernet/intel/igc/igc_ethtool.c | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c b/drivers/net/ethernet/intel/igc/igc_ethtool.c index 1a64f1ca6ca8..f2c4f1966bb0 100644 --- a/drivers/net/ethernet/intel/igc/igc_ethtool.c +++ b/drivers/net/ethernet/intel/igc/igc_ethtool.c @@ -1711,21 +1711,6 @@ static int igc_ethtool_set_eee(struct net_device *netdev, return 0; } -static int igc_ethtool_begin(struct net_device *netdev) -{ - struct igc_adapter *adapter = netdev_priv(netdev); - - pm_runtime_get_sync(&adapter->pdev->dev); - return 0; -} - -static void igc_ethtool_complete(struct net_device *netdev) -{ - struct igc_adapter *adapter = netdev_priv(netdev); - - pm_runtime_put(&adapter->pdev->dev); -} - static int igc_ethtool_get_link_ksettings(struct net_device *netdev, struct ethtool_link_ksettings *cmd) { @@ -2025,8 +2010,6 @@ static const struct ethtool_ops igc_ethtool_ops = { .set_priv_flags = igc_ethtool_set_priv_flags, .get_eee = igc_ethtool_get_eee, .set_eee = igc_ethtool_set_eee, - .begin = igc_ethtool_begin, - .complete = igc_ethtool_complete, .get_link_ksettings = igc_ethtool_get_link_ksettings, .set_link_ksettings = igc_ethtool_set_link_ksettings, .self_test = igc_ethtool_diag_test, -- 2.34.1
WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Helgaas <helgaas@kernel.org> To: Jesse Brandeburg <jesse.brandeburg@intel.com>, Tony Nguyen <anthony.l.nguyen@intel.com>, "David S . Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com> Cc: Heiner Kallweit <hkallweit1@gmail.com>, Konstantin Khlebnikov <khlebnikov@openvz.org>, Zheng Yan <zheng.z.yan@intel.com>, Sasha Neftin <sasha.neftin@intel.com>, "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>, intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com> Subject: [PATCH 3/3] igc: Remove redundant runtime resume for ethtool ops Date: Mon, 25 Mar 2024 17:29:51 -0500 [thread overview] Message-ID: <20240325222951.1460656-4-helgaas@kernel.org> (raw) In-Reply-To: <20240325222951.1460656-1-helgaas@kernel.org> From: Bjorn Helgaas <bhelgaas@google.com> 8c5ad0dae93c ("igc: Add ethtool support") added ethtool_ops.begin() and .complete(), which used pm_runtime_get_sync() to resume suspended devices before any ethtool_ops callback and allow suspend after it completed. Subsequently, f32a21376573 ("ethtool: runtime-resume netdev parent before ethtool ioctl ops") added pm_runtime_get_sync() in the dev_ethtool() path, so the device is resumed before any ethtool_ops callback even if the driver didn't supply a .begin() callback. Remove the .begin() and .complete() callbacks, which are now redundant because dev_ethtool() already resumes the device. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> --- drivers/net/ethernet/intel/igc/igc_ethtool.c | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c b/drivers/net/ethernet/intel/igc/igc_ethtool.c index 1a64f1ca6ca8..f2c4f1966bb0 100644 --- a/drivers/net/ethernet/intel/igc/igc_ethtool.c +++ b/drivers/net/ethernet/intel/igc/igc_ethtool.c @@ -1711,21 +1711,6 @@ static int igc_ethtool_set_eee(struct net_device *netdev, return 0; } -static int igc_ethtool_begin(struct net_device *netdev) -{ - struct igc_adapter *adapter = netdev_priv(netdev); - - pm_runtime_get_sync(&adapter->pdev->dev); - return 0; -} - -static void igc_ethtool_complete(struct net_device *netdev) -{ - struct igc_adapter *adapter = netdev_priv(netdev); - - pm_runtime_put(&adapter->pdev->dev); -} - static int igc_ethtool_get_link_ksettings(struct net_device *netdev, struct ethtool_link_ksettings *cmd) { @@ -2025,8 +2010,6 @@ static const struct ethtool_ops igc_ethtool_ops = { .set_priv_flags = igc_ethtool_set_priv_flags, .get_eee = igc_ethtool_get_eee, .set_eee = igc_ethtool_set_eee, - .begin = igc_ethtool_begin, - .complete = igc_ethtool_complete, .get_link_ksettings = igc_ethtool_get_link_ksettings, .set_link_ksettings = igc_ethtool_set_link_ksettings, .self_test = igc_ethtool_diag_test, -- 2.34.1
next prev parent reply other threads:[~2024-03-25 22:30 UTC|newest] Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top 2024-03-25 22:29 [PATCH 0/3] net/e1000e, igb, igc: Remove redundant runtime resume Bjorn Helgaas 2024-03-25 22:29 ` [Intel-wired-lan] " Bjorn Helgaas 2024-03-25 22:29 ` [PATCH 1/3] e1000e: Remove redundant runtime resume for ethtool_ops Bjorn Helgaas 2024-03-25 22:29 ` [Intel-wired-lan] " Bjorn Helgaas 2024-03-26 14:35 ` Simon Horman 2024-03-26 14:35 ` [Intel-wired-lan] " Simon Horman 2024-04-02 18:32 ` naamax.meir 2024-04-02 18:32 ` naamax.meir 2024-03-25 22:29 ` [PATCH 2/3] igb: " Bjorn Helgaas 2024-03-25 22:29 ` [Intel-wired-lan] " Bjorn Helgaas 2024-03-26 14:36 ` Simon Horman 2024-03-26 14:36 ` [Intel-wired-lan] " Simon Horman 2024-04-05 20:41 ` Mekala, SunithaX D 2024-04-05 20:41 ` Mekala, SunithaX D 2024-03-25 22:29 ` Bjorn Helgaas [this message] 2024-03-25 22:29 ` [PATCH 3/3] igc: Remove redundant runtime resume for ethtool ops Bjorn Helgaas 2024-03-26 14:36 ` Simon Horman 2024-03-26 14:36 ` [Intel-wired-lan] " Simon Horman 2024-04-08 11:32 ` naamax.meir 2024-04-08 11:32 ` naamax.meir
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20240325222951.1460656-4-helgaas@kernel.org \ --to=helgaas@kernel.org \ --cc=anthony.l.nguyen@intel.com \ --cc=bhelgaas@google.com \ --cc=davem@davemloft.net \ --cc=edumazet@google.com \ --cc=hkallweit1@gmail.com \ --cc=intel-wired-lan@lists.osuosl.org \ --cc=jesse.brandeburg@intel.com \ --cc=khlebnikov@openvz.org \ --cc=kuba@kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=netdev@vger.kernel.org \ --cc=pabeni@redhat.com \ --cc=rafael.j.wysocki@intel.com \ --cc=sasha.neftin@intel.com \ --cc=zheng.z.yan@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.