netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4
@ 2020-03-11 22:32 Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 01/15] net: be2net: reject unsupported coalescing params Jakub Kicinski
                   ` (15 more replies)
  0 siblings, 16 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Hi!

Convert more drivers following the groundwork laid in a recent
patch set [1] and continued in [2], [3]. The aim of the effort
is to consolidate irq coalescing parameter validation in the core.

This set converts 15 drivers in drivers/net/ethernet - remaining
Intel drivers, Freescale/NXP, and others.
2 more conversion sets to come.

[1] https://lore.kernel.org/netdev/20200305051542.991898-1-kuba@kernel.org/
[2] https://lore.kernel.org/netdev/20200306010602.1620354-1-kuba@kernel.org/
[3] https://lore.kernel.org/netdev/20200310021512.1861626-1-kuba@kernel.org/

Jakub Kicinski (15):
  net: be2net: reject unsupported coalescing params
  net: dpaa: reject unsupported coalescing params
  net: fec: reject unsupported coalescing params
  net: gianfar: reject unsupported coalescing params
  net: hns: reject unsupported coalescing params
  net: hns3: reject unsupported coalescing params
  net: e1000: reject unsupported coalescing params
  net: fm10k: reject unsupported coalescing params
  net: i40e: reject unsupported coalescing params
  net: iavf: reject unsupported coalescing params
  net: igb: let core reject the unsupported coalescing parameters
  net: igbvf: reject unsupported coalescing params
  net: igc: let core reject the unsupported coalescing parameters
  net: ixgbe: reject unsupported coalescing params
  net: ixgbevf: reject unsupported coalescing params

 .../net/ethernet/emulex/benet/be_ethtool.c    |  3 +++
 .../ethernet/freescale/dpaa/dpaa_ethtool.c    |  6 ++---
 drivers/net/ethernet/freescale/fec_main.c     |  2 ++
 .../net/ethernet/freescale/gianfar_ethtool.c  |  2 ++
 .../net/ethernet/hisilicon/hns/hns_ethtool.c  |  5 +++++
 .../ethernet/hisilicon/hns3/hns3_ethtool.c    |  7 ++++++
 .../net/ethernet/intel/e1000/e1000_ethtool.c  |  1 +
 .../net/ethernet/intel/fm10k/fm10k_ethtool.c  |  2 ++
 .../net/ethernet/intel/i40e/i40e_ethtool.c    |  5 +++++
 .../net/ethernet/intel/iavf/iavf_ethtool.c    |  4 ++++
 drivers/net/ethernet/intel/igb/igb_ethtool.c  | 22 +------------------
 drivers/net/ethernet/intel/igbvf/ethtool.c    |  1 +
 drivers/net/ethernet/intel/igc/igc_ethtool.c  | 22 +------------------
 .../net/ethernet/intel/ixgbe/ixgbe_ethtool.c  |  1 +
 drivers/net/ethernet/intel/ixgbevf/ethtool.c  |  1 +
 include/linux/ethtool.h                       |  8 +++++++
 16 files changed, 46 insertions(+), 46 deletions(-)

-- 
2.24.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

* [PATCH net-next 01/15] net: be2net: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 02/15] net: dpaa: " Jakub Kicinski
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/emulex/benet/be_ethtool.c | 3 +++
 include/linux/ethtool.h                        | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/drivers/net/ethernet/emulex/benet/be_ethtool.c b/drivers/net/ethernet/emulex/benet/be_ethtool.c
index 9d9f0545fbfe..d6ed1d943762 100644
--- a/drivers/net/ethernet/emulex/benet/be_ethtool.c
+++ b/drivers/net/ethernet/emulex/benet/be_ethtool.c
@@ -1408,6 +1408,9 @@ static int be_set_priv_flags(struct net_device *netdev, u32 flags)
 }
 
 const struct ethtool_ops be_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
+				     ETHTOOL_COALESCE_USE_ADAPTIVE |
+				     ETHTOOL_COALESCE_USECS_LOW_HIGH,
 	.get_drvinfo = be_get_drvinfo,
 	.get_wol = be_get_wol,
 	.set_wol = be_set_wol,
diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h
index 9efeebde3514..acfce915a02b 100644
--- a/include/linux/ethtool.h
+++ b/include/linux/ethtool.h
@@ -211,6 +211,9 @@ bool ethtool_convert_link_mode_to_legacy_u32(u32 *legacy_u32,
 	 ETHTOOL_COALESCE_TX_MAX_FRAMES_IRQ)
 #define ETHTOOL_COALESCE_USE_ADAPTIVE					\
 	(ETHTOOL_COALESCE_USE_ADAPTIVE_RX | ETHTOOL_COALESCE_USE_ADAPTIVE_TX)
+#define ETHTOOL_COALESCE_USECS_LOW_HIGH					\
+	(ETHTOOL_COALESCE_RX_USECS_LOW | ETHTOOL_COALESCE_TX_USECS_LOW | \
+	 ETHTOOL_COALESCE_RX_USECS_HIGH | ETHTOOL_COALESCE_TX_USECS_HIGH)
 #define ETHTOOL_COALESCE_PKT_RATE_RX_USECS				\
 	(ETHTOOL_COALESCE_USE_ADAPTIVE_RX |				\
 	 ETHTOOL_COALESCE_RX_USECS_LOW | ETHTOOL_COALESCE_RX_USECS_HIGH | \
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 02/15] net: dpaa: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 01/15] net: be2net: reject unsupported coalescing params Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-12  7:35   ` Madalin Bucur (OSS)
  2020-03-11 22:32 ` [PATCH net-next 03/15] net: fec: " Jakub Kicinski
                   ` (13 subsequent siblings)
  15 siblings, 1 reply; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters
(other than adaptive rx, which will now be rejected by core).

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c b/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c
index 6aa1fa22cd04..9db2a02fb531 100644
--- a/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c
+++ b/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c
@@ -525,7 +525,6 @@ static int dpaa_get_coalesce(struct net_device *dev,
 
 	c->rx_coalesce_usecs = period;
 	c->rx_max_coalesced_frames = thresh;
-	c->use_adaptive_rx_coalesce = false;
 
 	return 0;
 }
@@ -540,9 +539,6 @@ static int dpaa_set_coalesce(struct net_device *dev,
 	u8 thresh, prev_thresh;
 	int cpu, res;
 
-	if (c->use_adaptive_rx_coalesce)
-		return -EINVAL;
-
 	period = c->rx_coalesce_usecs;
 	thresh = c->rx_max_coalesced_frames;
 
@@ -582,6 +578,8 @@ static int dpaa_set_coalesce(struct net_device *dev,
 }
 
 const struct ethtool_ops dpaa_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS |
+				     ETHTOOL_COALESCE_RX_MAX_FRAMES,
 	.get_drvinfo = dpaa_get_drvinfo,
 	.get_msglevel = dpaa_get_msglevel,
 	.set_msglevel = dpaa_set_msglevel,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 03/15] net: fec: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 01/15] net: be2net: reject unsupported coalescing params Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 02/15] net: dpaa: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-12  1:24   ` [EXT] " Andy Duan
  2020-03-11 22:32 ` [PATCH net-next 04/15] net: gianfar: " Jakub Kicinski
                   ` (12 subsequent siblings)
  15 siblings, 1 reply; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/freescale/fec_main.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
index af7653e341f2..ce154695f67c 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -2641,6 +2641,8 @@ fec_enet_set_wol(struct net_device *ndev, struct ethtool_wolinfo *wol)
 }
 
 static const struct ethtool_ops fec_enet_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
+				     ETHTOOL_COALESCE_MAX_FRAMES,
 	.get_drvinfo		= fec_enet_get_drvinfo,
 	.get_regs_len		= fec_enet_get_regs_len,
 	.get_regs		= fec_enet_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 04/15] net: gianfar: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (2 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 03/15] net: fec: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 05/15] net: hns: " Jakub Kicinski
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/freescale/gianfar_ethtool.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/ethernet/freescale/gianfar_ethtool.c b/drivers/net/ethernet/freescale/gianfar_ethtool.c
index f82e0be4d309..cc7d4f93da54 100644
--- a/drivers/net/ethernet/freescale/gianfar_ethtool.c
+++ b/drivers/net/ethernet/freescale/gianfar_ethtool.c
@@ -1474,6 +1474,8 @@ static int gfar_get_ts_info(struct net_device *dev,
 }
 
 const struct ethtool_ops gfar_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
+				     ETHTOOL_COALESCE_MAX_FRAMES,
 	.get_drvinfo = gfar_gdrvinfo,
 	.get_regs_len = gfar_reglen,
 	.get_regs = gfar_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 05/15] net: hns: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (3 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 04/15] net: gianfar: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 06/15] net: hns3: " Jakub Kicinski
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/hisilicon/hns/hns_ethtool.c | 5 +++++
 include/linux/ethtool.h                          | 5 +++++
 2 files changed, 10 insertions(+)

diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
index 717fccc2efba..49624acf2473 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
@@ -1264,6 +1264,11 @@ static int hns_get_rxnfc(struct net_device *netdev,
 }
 
 static const struct ethtool_ops hns_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
+				     ETHTOOL_COALESCE_MAX_FRAMES |
+				     ETHTOOL_COALESCE_USE_ADAPTIVE |
+				     ETHTOOL_COALESCE_USECS_LOW_HIGH |
+				     ETHTOOL_COALESCE_MAX_FRAMES_LOW_HIGH,
 	.get_drvinfo = hns_nic_get_drvinfo,
 	.get_link  = hns_nic_get_link,
 	.get_ringparam = hns_get_ringparam,
diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h
index acfce915a02b..be355f37337d 100644
--- a/include/linux/ethtool.h
+++ b/include/linux/ethtool.h
@@ -214,6 +214,11 @@ bool ethtool_convert_link_mode_to_legacy_u32(u32 *legacy_u32,
 #define ETHTOOL_COALESCE_USECS_LOW_HIGH					\
 	(ETHTOOL_COALESCE_RX_USECS_LOW | ETHTOOL_COALESCE_TX_USECS_LOW | \
 	 ETHTOOL_COALESCE_RX_USECS_HIGH | ETHTOOL_COALESCE_TX_USECS_HIGH)
+#define ETHTOOL_COALESCE_MAX_FRAMES_LOW_HIGH	\
+	(ETHTOOL_COALESCE_RX_MAX_FRAMES_LOW |	\
+	 ETHTOOL_COALESCE_TX_MAX_FRAMES_LOW |	\
+	 ETHTOOL_COALESCE_RX_MAX_FRAMES_HIGH |	\
+	 ETHTOOL_COALESCE_TX_MAX_FRAMES_HIGH)
 #define ETHTOOL_COALESCE_PKT_RATE_RX_USECS				\
 	(ETHTOOL_COALESCE_USE_ADAPTIVE_RX |				\
 	 ETHTOOL_COALESCE_RX_USECS_LOW | ETHTOOL_COALESCE_RX_USECS_HIGH | \
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 06/15] net: hns3: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (4 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 05/15] net: hns: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 07/15] net: e1000: " Jakub Kicinski
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c b/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c
index 3f59a1924390..28b81f24afa1 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c
@@ -1390,7 +1390,13 @@ static int hns3_set_fecparam(struct net_device *netdev,
 	return ops->set_fec(handle, fec_mode);
 }
 
+#define HNS3_ETHTOOL_COALESCE	(ETHTOOL_COALESCE_USECS |		\
+				 ETHTOOL_COALESCE_USE_ADAPTIVE |	\
+				 ETHTOOL_COALESCE_RX_USECS_HIGH |	\
+				 ETHTOOL_COALESCE_TX_USECS_HIGH)
+
 static const struct ethtool_ops hns3vf_ethtool_ops = {
+	.supported_coalesce_params = HNS3_ETHTOOL_COALESCE,
 	.get_drvinfo = hns3_get_drvinfo,
 	.get_ringparam = hns3_get_ringparam,
 	.set_ringparam = hns3_set_ringparam,
@@ -1416,6 +1422,7 @@ static const struct ethtool_ops hns3vf_ethtool_ops = {
 };
 
 static const struct ethtool_ops hns3_ethtool_ops = {
+	.supported_coalesce_params = HNS3_ETHTOOL_COALESCE,
 	.self_test = hns3_self_test,
 	.get_drvinfo = hns3_get_drvinfo,
 	.get_link = hns3_get_link,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 07/15] net: e1000: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (5 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 06/15] net: hns3: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 08/15] net: fm10k: " Jakub Kicinski
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/e1000/e1000_ethtool.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/intel/e1000/e1000_ethtool.c b/drivers/net/ethernet/intel/e1000/e1000_ethtool.c
index be56e631d693..6f45df5690d4 100644
--- a/drivers/net/ethernet/intel/e1000/e1000_ethtool.c
+++ b/drivers/net/ethernet/intel/e1000/e1000_ethtool.c
@@ -1852,6 +1852,7 @@ static void e1000_get_strings(struct net_device *netdev, u32 stringset,
 }
 
 static const struct ethtool_ops e1000_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS,
 	.get_drvinfo		= e1000_get_drvinfo,
 	.get_regs_len		= e1000_get_regs_len,
 	.get_regs		= e1000_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 08/15] net: fm10k: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (6 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 07/15] net: e1000: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:41   ` Jacob Keller
  2020-03-11 22:32 ` [PATCH net-next 09/15] net: i40e: " Jakub Kicinski
                   ` (7 subsequent siblings)
  15 siblings, 1 reply; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c b/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c
index 68edf55ac906..37fbc646deb9 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c
@@ -1151,6 +1151,8 @@ static int fm10k_set_channels(struct net_device *dev,
 }
 
 static const struct ethtool_ops fm10k_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
+				     ETHTOOL_COALESCE_USE_ADAPTIVE,
 	.get_strings		= fm10k_get_strings,
 	.get_sset_count		= fm10k_get_sset_count,
 	.get_ethtool_stats      = fm10k_get_ethtool_stats,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 09/15] net: i40e: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (7 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 08/15] net: fm10k: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 10/15] net: iavf: " Jakub Kicinski
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/i40e/i40e_ethtool.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/net/ethernet/intel/i40e/i40e_ethtool.c b/drivers/net/ethernet/intel/i40e/i40e_ethtool.c
index 317f3f1458db..aa8026b1eb81 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_ethtool.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_ethtool.c
@@ -5249,6 +5249,11 @@ static const struct ethtool_ops i40e_ethtool_recovery_mode_ops = {
 };
 
 static const struct ethtool_ops i40e_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
+				     ETHTOOL_COALESCE_MAX_FRAMES_IRQ |
+				     ETHTOOL_COALESCE_USE_ADAPTIVE |
+				     ETHTOOL_COALESCE_RX_USECS_HIGH |
+				     ETHTOOL_COALESCE_TX_USECS_HIGH,
 	.get_drvinfo		= i40e_get_drvinfo,
 	.get_regs_len		= i40e_get_regs_len,
 	.get_regs		= i40e_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 10/15] net: iavf: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (8 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 09/15] net: i40e: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 11/15] net: igb: let core reject the unsupported coalescing parameters Jakub Kicinski
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/iavf/iavf_ethtool.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/ethernet/intel/iavf/iavf_ethtool.c b/drivers/net/ethernet/intel/iavf/iavf_ethtool.c
index f807e2c7597f..2c39d46b6138 100644
--- a/drivers/net/ethernet/intel/iavf/iavf_ethtool.c
+++ b/drivers/net/ethernet/intel/iavf/iavf_ethtool.c
@@ -996,6 +996,10 @@ static int iavf_set_rxfh(struct net_device *netdev, const u32 *indir,
 }
 
 static const struct ethtool_ops iavf_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
+				     ETHTOOL_COALESCE_MAX_FRAMES |
+				     ETHTOOL_COALESCE_MAX_FRAMES_IRQ |
+				     ETHTOOL_COALESCE_USE_ADAPTIVE,
 	.get_drvinfo		= iavf_get_drvinfo,
 	.get_link		= ethtool_op_get_link,
 	.get_ringparam		= iavf_get_ringparam,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 11/15] net: igb: let core reject the unsupported coalescing parameters
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (9 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 10/15] net: iavf: " Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:32 ` [PATCH net-next 12/15] net: igbvf: reject unsupported coalescing params Jakub Kicinski
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver was rejecting almost all unsupported
parameters already, it was only missing a check
for tx_max_coalesced_frames_irq.

As a side effect of these changes the error code for
unsupported params changes from ENOTSUPP to EOPNOTSUPP.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/igb/igb_ethtool.c | 22 +-------------------
 1 file changed, 1 insertion(+), 21 deletions(-)

diff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c
index f96ffa83efbe..39d3b76a6f5d 100644
--- a/drivers/net/ethernet/intel/igb/igb_ethtool.c
+++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c
@@ -2183,27 +2183,6 @@ static int igb_set_coalesce(struct net_device *netdev,
 	struct igb_adapter *adapter = netdev_priv(netdev);
 	int i;
 
-	if (ec->rx_max_coalesced_frames ||
-	    ec->rx_coalesce_usecs_irq ||
-	    ec->rx_max_coalesced_frames_irq ||
-	    ec->tx_max_coalesced_frames ||
-	    ec->tx_coalesce_usecs_irq ||
-	    ec->stats_block_coalesce_usecs ||
-	    ec->use_adaptive_rx_coalesce ||
-	    ec->use_adaptive_tx_coalesce ||
-	    ec->pkt_rate_low ||
-	    ec->rx_coalesce_usecs_low ||
-	    ec->rx_max_coalesced_frames_low ||
-	    ec->tx_coalesce_usecs_low ||
-	    ec->tx_max_coalesced_frames_low ||
-	    ec->pkt_rate_high ||
-	    ec->rx_coalesce_usecs_high ||
-	    ec->rx_max_coalesced_frames_high ||
-	    ec->tx_coalesce_usecs_high ||
-	    ec->tx_max_coalesced_frames_high ||
-	    ec->rate_sample_interval)
-		return -ENOTSUPP;
-
 	if ((ec->rx_coalesce_usecs > IGB_MAX_ITR_USECS) ||
 	    ((ec->rx_coalesce_usecs > 3) &&
 	     (ec->rx_coalesce_usecs < IGB_MIN_ITR_USECS)) ||
@@ -3477,6 +3456,7 @@ static int igb_set_priv_flags(struct net_device *netdev, u32 priv_flags)
 }
 
 static const struct ethtool_ops igb_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS,
 	.get_drvinfo		= igb_get_drvinfo,
 	.get_regs_len		= igb_get_regs_len,
 	.get_regs		= igb_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 12/15] net: igbvf: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (10 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 11/15] net: igb: let core reject the unsupported coalescing parameters Jakub Kicinski
@ 2020-03-11 22:32 ` Jakub Kicinski
  2020-03-11 22:33 ` [PATCH net-next 13/15] net: igc: let core reject the unsupported coalescing parameters Jakub Kicinski
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:32 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/igbvf/ethtool.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/intel/igbvf/ethtool.c b/drivers/net/ethernet/intel/igbvf/ethtool.c
index 3ae358b35227..9217d150e286 100644
--- a/drivers/net/ethernet/intel/igbvf/ethtool.c
+++ b/drivers/net/ethernet/intel/igbvf/ethtool.c
@@ -424,6 +424,7 @@ static void igbvf_get_strings(struct net_device *netdev, u32 stringset,
 }
 
 static const struct ethtool_ops igbvf_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS,
 	.get_drvinfo		= igbvf_get_drvinfo,
 	.get_regs_len		= igbvf_get_regs_len,
 	.get_regs		= igbvf_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 13/15] net: igc: let core reject the unsupported coalescing parameters
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (11 preceding siblings ...)
  2020-03-11 22:32 ` [PATCH net-next 12/15] net: igbvf: reject unsupported coalescing params Jakub Kicinski
@ 2020-03-11 22:33 ` Jakub Kicinski
  2020-03-11 22:33 ` [PATCH net-next 14/15] net: ixgbe: reject unsupported coalescing params Jakub Kicinski
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:33 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver was rejecting almost all unsupported
parameters already, it was only missing a check
for tx_max_coalesced_frames_irq.

As a side effect of these changes the error code for
unsupported params changes from ENOTSUPP to EOPNOTSUPP.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/igc/igc_ethtool.c | 22 +-------------------
 1 file changed, 1 insertion(+), 21 deletions(-)

diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c b/drivers/net/ethernet/intel/igc/igc_ethtool.c
index 69f50b8e2af3..f530fc29b074 100644
--- a/drivers/net/ethernet/intel/igc/igc_ethtool.c
+++ b/drivers/net/ethernet/intel/igc/igc_ethtool.c
@@ -861,27 +861,6 @@ static int igc_set_coalesce(struct net_device *netdev,
 	struct igc_adapter *adapter = netdev_priv(netdev);
 	int i;
 
-	if (ec->rx_max_coalesced_frames ||
-	    ec->rx_coalesce_usecs_irq ||
-	    ec->rx_max_coalesced_frames_irq ||
-	    ec->tx_max_coalesced_frames ||
-	    ec->tx_coalesce_usecs_irq ||
-	    ec->stats_block_coalesce_usecs ||
-	    ec->use_adaptive_rx_coalesce ||
-	    ec->use_adaptive_tx_coalesce ||
-	    ec->pkt_rate_low ||
-	    ec->rx_coalesce_usecs_low ||
-	    ec->rx_max_coalesced_frames_low ||
-	    ec->tx_coalesce_usecs_low ||
-	    ec->tx_max_coalesced_frames_low ||
-	    ec->pkt_rate_high ||
-	    ec->rx_coalesce_usecs_high ||
-	    ec->rx_max_coalesced_frames_high ||
-	    ec->tx_coalesce_usecs_high ||
-	    ec->tx_max_coalesced_frames_high ||
-	    ec->rate_sample_interval)
-		return -ENOTSUPP;
-
 	if (ec->rx_coalesce_usecs > IGC_MAX_ITR_USECS ||
 	    (ec->rx_coalesce_usecs > 3 &&
 	     ec->rx_coalesce_usecs < IGC_MIN_ITR_USECS) ||
@@ -1915,6 +1894,7 @@ static int igc_set_link_ksettings(struct net_device *netdev,
 }
 
 static const struct ethtool_ops igc_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS,
 	.get_drvinfo		= igc_get_drvinfo,
 	.get_regs_len		= igc_get_regs_len,
 	.get_regs		= igc_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 14/15] net: ixgbe: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (12 preceding siblings ...)
  2020-03-11 22:33 ` [PATCH net-next 13/15] net: igc: let core reject the unsupported coalescing parameters Jakub Kicinski
@ 2020-03-11 22:33 ` Jakub Kicinski
  2020-03-11 22:33 ` [PATCH net-next 15/15] net: ixgbevf: " Jakub Kicinski
  2020-03-12 18:33 ` [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 David Miller
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:33 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
index 7c52ae8ac005..c6bf0a50ee63 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
@@ -3444,6 +3444,7 @@ static int ixgbe_set_priv_flags(struct net_device *netdev, u32 priv_flags)
 }
 
 static const struct ethtool_ops ixgbe_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS,
 	.get_drvinfo            = ixgbe_get_drvinfo,
 	.get_regs_len           = ixgbe_get_regs_len,
 	.get_regs               = ixgbe_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH net-next 15/15] net: ixgbevf: reject unsupported coalescing params
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (13 preceding siblings ...)
  2020-03-11 22:33 ` [PATCH net-next 14/15] net: ixgbe: reject unsupported coalescing params Jakub Kicinski
@ 2020-03-11 22:33 ` Jakub Kicinski
  2020-03-12 18:33 ` [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 David Miller
  15 siblings, 0 replies; 20+ messages in thread
From: Jakub Kicinski @ 2020-03-11 22:33 UTC (permalink / raw)
  To: davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck, Jakub Kicinski

Set ethtool_ops->supported_coalesce_params to let
the core reject unsupported coalescing parameters.

This driver did not previously reject unsupported parameters.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 drivers/net/ethernet/intel/ixgbevf/ethtool.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/intel/ixgbevf/ethtool.c b/drivers/net/ethernet/intel/ixgbevf/ethtool.c
index f7f309c96fa8..988fa49fa99a 100644
--- a/drivers/net/ethernet/intel/ixgbevf/ethtool.c
+++ b/drivers/net/ethernet/intel/ixgbevf/ethtool.c
@@ -968,6 +968,7 @@ static int ixgbevf_set_priv_flags(struct net_device *netdev, u32 priv_flags)
 }
 
 static const struct ethtool_ops ixgbevf_ethtool_ops = {
+	.supported_coalesce_params = ETHTOOL_COALESCE_USECS,
 	.get_drvinfo		= ixgbevf_get_drvinfo,
 	.get_regs_len		= ixgbevf_get_regs_len,
 	.get_regs		= ixgbevf_get_regs,
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Re: [PATCH net-next 08/15] net: fm10k: reject unsupported coalescing params
  2020-03-11 22:32 ` [PATCH net-next 08/15] net: fm10k: " Jakub Kicinski
@ 2020-03-11 22:41   ` Jacob Keller
  0 siblings, 0 replies; 20+ messages in thread
From: Jacob Keller @ 2020-03-11 22:41 UTC (permalink / raw)
  To: Jakub Kicinski, davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	alexander.h.duyck

On 3/11/2020 3:32 PM, Jakub Kicinski wrote:
> Set ethtool_ops->supported_coalesce_params to let
> the core reject unsupported coalescing parameters.
> 
> This driver did not previously reject unsupported parameters.
> 
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Acked-by: Jacob Keller <jacob.e.keller@intel.com>

> ---
>  drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c b/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c
> index 68edf55ac906..37fbc646deb9 100644
> --- a/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c
> +++ b/drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c
> @@ -1151,6 +1151,8 @@ static int fm10k_set_channels(struct net_device *dev,
>  }
>  
>  static const struct ethtool_ops fm10k_ethtool_ops = {
> +	.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
> +				     ETHTOOL_COALESCE_USE_ADAPTIVE,
>  	.get_strings		= fm10k_get_strings,
>  	.get_sset_count		= fm10k_get_sset_count,
>  	.get_ethtool_stats      = fm10k_get_ethtool_stats,
> 

^ permalink raw reply	[flat|nested] 20+ messages in thread

* RE: [EXT] [PATCH net-next 03/15] net: fec: reject unsupported coalescing params
  2020-03-11 22:32 ` [PATCH net-next 03/15] net: fec: " Jakub Kicinski
@ 2020-03-12  1:24   ` Andy Duan
  0 siblings, 0 replies; 20+ messages in thread
From: Andy Duan @ 2020-03-12  1:24 UTC (permalink / raw)
  To: Jakub Kicinski, davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, Madalin Bucur,
	Claudiu Manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck

From: Jakub Kicinski <kuba@kernel.org> Sent: Thursday, March 12, 2020 6:33 AM
> Set ethtool_ops->supported_coalesce_params to let the core reject
> unsupported coalescing parameters.
> 
> This driver did not previously reject unsupported parameters.
> 
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Acked-by: Fugang Duan <fugang.duan@nxp.com>
> ---
>  drivers/net/ethernet/freescale/fec_main.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/net/ethernet/freescale/fec_main.c
> b/drivers/net/ethernet/freescale/fec_main.c
> index af7653e341f2..ce154695f67c 100644
> --- a/drivers/net/ethernet/freescale/fec_main.c
> +++ b/drivers/net/ethernet/freescale/fec_main.c
> @@ -2641,6 +2641,8 @@ fec_enet_set_wol(struct net_device *ndev, struct
> ethtool_wolinfo *wol)  }
> 
>  static const struct ethtool_ops fec_enet_ethtool_ops = {
> +       .supported_coalesce_params = ETHTOOL_COALESCE_USECS |
> +
> ETHTOOL_COALESCE_MAX_FRAMES,
>         .get_drvinfo            = fec_enet_get_drvinfo,
>         .get_regs_len           = fec_enet_get_regs_len,
>         .get_regs               = fec_enet_get_regs,
> --
> 2.24.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

* RE: [PATCH net-next 02/15] net: dpaa: reject unsupported coalescing params
  2020-03-11 22:32 ` [PATCH net-next 02/15] net: dpaa: " Jakub Kicinski
@ 2020-03-12  7:35   ` Madalin Bucur (OSS)
  0 siblings, 0 replies; 20+ messages in thread
From: Madalin Bucur (OSS) @ 2020-03-12  7:35 UTC (permalink / raw)
  To: Jakub Kicinski, davem
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, Andy Duan, Claudiu Manoil,
	yisen.zhuang, salil.mehta, jeffrey.t.kirsher, jacob.e.keller,
	alexander.h.duyck

> -----Original Message-----
> From: Jakub Kicinski <kuba@kernel.org>
> Sent: Thursday, March 12, 2020 12:33 AM
> To: davem@davemloft.net
> Subject: [PATCH net-next 02/15] net: dpaa: reject unsupported coalescing
> params
> 
> Set ethtool_ops->supported_coalesce_params to let
> the core reject unsupported coalescing parameters.
> 
> This driver did not previously reject unsupported parameters
> (other than adaptive rx, which will now be rejected by core).
> 
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Acked-by: Madalin Bucur <madalin.bucur@oss.nxp.com>

> ---
>  drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c
> b/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c
> index 6aa1fa22cd04..9db2a02fb531 100644
> --- a/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c
> +++ b/drivers/net/ethernet/freescale/dpaa/dpaa_ethtool.c
> @@ -525,7 +525,6 @@ static int dpaa_get_coalesce(struct net_device *dev,
> 
>  	c->rx_coalesce_usecs = period;
>  	c->rx_max_coalesced_frames = thresh;
> -	c->use_adaptive_rx_coalesce = false;
> 
>  	return 0;
>  }
> @@ -540,9 +539,6 @@ static int dpaa_set_coalesce(struct net_device *dev,
>  	u8 thresh, prev_thresh;
>  	int cpu, res;
> 
> -	if (c->use_adaptive_rx_coalesce)
> -		return -EINVAL;
> -
>  	period = c->rx_coalesce_usecs;
>  	thresh = c->rx_max_coalesced_frames;
> 
> @@ -582,6 +578,8 @@ static int dpaa_set_coalesce(struct net_device *dev,
>  }
> 
>  const struct ethtool_ops dpaa_ethtool_ops = {
> +	.supported_coalesce_params = ETHTOOL_COALESCE_RX_USECS |
> +				     ETHTOOL_COALESCE_RX_MAX_FRAMES,
>  	.get_drvinfo = dpaa_get_drvinfo,
>  	.get_msglevel = dpaa_get_msglevel,
>  	.set_msglevel = dpaa_set_msglevel,
> --
> 2.24.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4
  2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
                   ` (14 preceding siblings ...)
  2020-03-11 22:33 ` [PATCH net-next 15/15] net: ixgbevf: " Jakub Kicinski
@ 2020-03-12 18:33 ` David Miller
  15 siblings, 0 replies; 20+ messages in thread
From: David Miller @ 2020-03-12 18:33 UTC (permalink / raw)
  To: kuba
  Cc: netdev, mkubecek, sathya.perla, ajit.khaparde,
	sriharsha.basavapatna, somnath.kotur, madalin.bucur, fugang.duan,
	claudiu.manoil, yisen.zhuang, salil.mehta, jeffrey.t.kirsher,
	jacob.e.keller, alexander.h.duyck

From: Jakub Kicinski <kuba@kernel.org>
Date: Wed, 11 Mar 2020 15:32:47 -0700

> Convert more drivers following the groundwork laid in a recent
> patch set [1] and continued in [2], [3]. The aim of the effort
> is to consolidate irq coalescing parameter validation in the core.
> 
> This set converts 15 drivers in drivers/net/ethernet - remaining
> Intel drivers, Freescale/NXP, and others.
> 2 more conversion sets to come.
> 
> [1] https://lore.kernel.org/netdev/20200305051542.991898-1-kuba@kernel.org/
> [2] https://lore.kernel.org/netdev/20200306010602.1620354-1-kuba@kernel.org/
> [3] https://lore.kernel.org/netdev/20200310021512.1861626-1-kuba@kernel.org/

Series applied, thanks Jakub.

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2020-03-12 18:33 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-11 22:32 [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 01/15] net: be2net: reject unsupported coalescing params Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 02/15] net: dpaa: " Jakub Kicinski
2020-03-12  7:35   ` Madalin Bucur (OSS)
2020-03-11 22:32 ` [PATCH net-next 03/15] net: fec: " Jakub Kicinski
2020-03-12  1:24   ` [EXT] " Andy Duan
2020-03-11 22:32 ` [PATCH net-next 04/15] net: gianfar: " Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 05/15] net: hns: " Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 06/15] net: hns3: " Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 07/15] net: e1000: " Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 08/15] net: fm10k: " Jakub Kicinski
2020-03-11 22:41   ` Jacob Keller
2020-03-11 22:32 ` [PATCH net-next 09/15] net: i40e: " Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 10/15] net: iavf: " Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 11/15] net: igb: let core reject the unsupported coalescing parameters Jakub Kicinski
2020-03-11 22:32 ` [PATCH net-next 12/15] net: igbvf: reject unsupported coalescing params Jakub Kicinski
2020-03-11 22:33 ` [PATCH net-next 13/15] net: igc: let core reject the unsupported coalescing parameters Jakub Kicinski
2020-03-11 22:33 ` [PATCH net-next 14/15] net: ixgbe: reject unsupported coalescing params Jakub Kicinski
2020-03-11 22:33 ` [PATCH net-next 15/15] net: ixgbevf: " Jakub Kicinski
2020-03-12 18:33 ` [PATCH net-next 00/15] ethtool: consolidate irq coalescing - part 4 David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).