Blob Blame History Raw
From: Jakub Kicinski <kuba@kernel.org>
Date: Fri, 15 May 2020 12:49:02 -0700
Subject: ethtool: don't call set_channels in drivers if config didn't change
Patch-mainline: v5.8-rc1
Git-commit: 75c36dbb1c3790eab909344b758decce6bb432da
References: bsc#1176447

Don't call drivers if nothing changed. Netlink code already
contains this logic.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Michal Kubecek <mkubecek@suse.cz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Michal Kubecek <mkubecek@suse.cz>

---
 net/ethtool/ioctl.c | 6 ++++++
 1 file changed, 6 insertions(+)

--- a/net/ethtool/ioctl.c
+++ b/net/ethtool/ioctl.c
@@ -1665,6 +1665,12 @@ static noinline_for_stack int ethtool_set_channels(struct net_device *dev,
 
 	dev->ethtool_ops->get_channels(dev, &curr);
 
+	if (channels.rx_count == curr.rx_count &&
+	    channels.tx_count == curr.tx_count &&
+	    channels.combined_count == curr.combined_count &&
+	    channels.other_count == curr.other_count)
+		return 0;
+
 	/* ensure new counts are within the maximums */
 	if (channels.rx_count > curr.max_rx ||
 	    channels.tx_count > curr.max_tx ||