DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] net/nfp: add the restrict of setting the mtu
@ 2022-03-17 12:52 Peng Zhang
  0 siblings, 0 replies; 3+ messages in thread
From: Peng Zhang @ 2022-03-17 12:52 UTC (permalink / raw)
  To: dev; +Cc: heinrich.kuhn, Peng Zhang, Chaoyong He, Louis Peens

1.When the setting mtu is higher than flbufsz, the mtu doesn't work.
But it doesn't have any notice about this restrict.
2.when the setting mtu isn't in the range, it doesn't have any notice.

This patch will add the notice about these restrict.

Signed-off-by: Peng Zhang <peng.zhang@corigine.com>
Signed-off-by: Chaoyong He <chaoyong.he@corigine.com>
Signed-off-by: Louis Peens <louis.peens@corigine.com>
---
 drivers/net/nfp/nfp_common.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/net/nfp/nfp_common.c b/drivers/net/nfp/nfp_common.c
index f8978e803a..2ea9853548 100644
--- a/drivers/net/nfp/nfp_common.c
+++ b/drivers/net/nfp/nfp_common.c
@@ -956,6 +956,20 @@ nfp_net_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu)
 		return -EBUSY;
 	}
 
+	/* the setting mtu is in the range */
+	if (mtu < 68 || mtu > hw->max_mtu) {
+		PMD_DRV_LOG(ERR, "the setting mtu cannot be less than 68 or more than %d",
+			    hw->max_mtu);
+		return -ERANGE;
+	}
+
+	/* the setting mtu is lower than flbufsz */
+	if (mtu > hw->flbufsz) {
+		PMD_DRV_LOG(ERR, "the setting mtu must be lower than current mbufsize of %d",
+			    hw->flbufsz);
+		return -ERANGE;
+	}
+
 	/* writing to configuration space */
 	nn_cfg_writel(hw, NFP_NET_CFG_MTU, mtu);
 
-- 
2.27.0


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

* Re: [PATCH] net/nfp: add the restrict of setting the mtu
  2022-03-17 14:39 Peng Zhang
@ 2022-03-17 18:29 ` Stephen Hemminger
  0 siblings, 0 replies; 3+ messages in thread
From: Stephen Hemminger @ 2022-03-17 18:29 UTC (permalink / raw)
  To: Peng Zhang; +Cc: dev, heinrich.kuhn, Chaoyong He, Louis Peens

On Thu, 17 Mar 2022 16:39:17 +0200
Peng Zhang <peng.zhang@corigine.com> wrote:

> +	/* the setting mtu is in the range */
> +	if (mtu < 68 || mtu > hw->max_mtu) {
> +		PMD_DRV_LOG(ERR, "the setting mtu cannot be less than 68 or more than %d",
> +			    hw->max_mtu);
> +		return -ERANGE;
> +	}
> +
> +	/* the setting mtu is lower than flbufsz */
> +	if (mtu > hw->flbufsz) {
> +		PMD_DRV_LOG(ERR, "the setting mtu must be lower than current mbufsize of %d",
> +			    hw->flbufsz);
> +		return -ERANGE;

The ethdev layer already has min/max mtu checks, why is it needed inside common code?

It looks like nfp_net_infos_get() does not set these values.
Please fix it there instead.

PS: 68 is RTE_ETHER_MIN_MTU so please use that.

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

* [PATCH] net/nfp: add the restrict of setting the mtu
@ 2022-03-17 14:39 Peng Zhang
  2022-03-17 18:29 ` Stephen Hemminger
  0 siblings, 1 reply; 3+ messages in thread
From: Peng Zhang @ 2022-03-17 14:39 UTC (permalink / raw)
  To: dev; +Cc: heinrich.kuhn, Peng Zhang, Chaoyong He, Louis Peens

1.When the setting mtu is higher than flbufsz, the mtu doesn't work.
But it doesn't have any notice about this restrict.
2.when the setting mtu isn't in the range, it doesn't have any notice.

This patch will add the notice about these restrict.

Signed-off-by: Peng Zhang <peng.zhang@corigine.com>
Signed-off-by: Chaoyong He <chaoyong.he@corigine.com>
Signed-off-by: Louis Peens <louis.peens@corigine.com>
---
 drivers/net/nfp/nfp_common.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/net/nfp/nfp_common.c b/drivers/net/nfp/nfp_common.c
index f8978e803a..2ea9853548 100644
--- a/drivers/net/nfp/nfp_common.c
+++ b/drivers/net/nfp/nfp_common.c
@@ -956,6 +956,20 @@ nfp_net_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu)
 		return -EBUSY;
 	}
 
+	/* the setting mtu is in the range */
+	if (mtu < 68 || mtu > hw->max_mtu) {
+		PMD_DRV_LOG(ERR, "the setting mtu cannot be less than 68 or more than %d",
+			    hw->max_mtu);
+		return -ERANGE;
+	}
+
+	/* the setting mtu is lower than flbufsz */
+	if (mtu > hw->flbufsz) {
+		PMD_DRV_LOG(ERR, "the setting mtu must be lower than current mbufsize of %d",
+			    hw->flbufsz);
+		return -ERANGE;
+	}
+
 	/* writing to configuration space */
 	nn_cfg_writel(hw, NFP_NET_CFG_MTU, mtu);
 
-- 
2.27.0


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

end of thread, other threads:[~2022-03-22  9:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-17 12:52 [PATCH] net/nfp: add the restrict of setting the mtu Peng Zhang
2022-03-17 14:39 Peng Zhang
2022-03-17 18:29 ` Stephen Hemminger

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).