DPDK patches and discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Howard Wang <howard_wang@realsil.com.cn>
Cc: <dev@dpdk.org>, <pro_nic_dpdk@realtek.com>
Subject: Re: [PATCH v1 15/18] net/r8169: impelment MTU configuration
Date: Tue, 15 Oct 2024 08:26:48 -0700	[thread overview]
Message-ID: <20241015082648.39684562@hermes.local> (raw)
In-Reply-To: <20241015030928.70642-16-howard_wang@realsil.com.cn>

On Tue, 15 Oct 2024 11:09:25 +0800
Howard Wang <howard_wang@realsil.com.cn> wrote:

> +static int
> +rtl_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu)
> +{
> +	struct rte_eth_dev_info dev_info;
> +	struct rtl_adapter *adapter = RTL_DEV_PRIVATE(dev);
> +	struct rtl_hw *hw = &adapter->hw;
> +	int ret;
> +	uint32_t frame_size = mtu + RTL_ETH_OVERHEAD;
> +
> +	ret = rtl_dev_infos_get(dev, &dev_info);
> +	if (ret != 0)
> +		return ret;
> +
> +	if (mtu < RTE_ETHER_MIN_MTU || frame_size > dev_info.max_rx_pktlen)
> +		return -EINVAL;
> +

This validation is already done in ethdev, not needed here.


int
rte_eth_dev_set_mtu(uint16_t port_id, uint16_t mtu)
{
...

		ret = rte_eth_dev_info_get(port_id, &dev_info);
		if (ret != 0)
			return ret;

		ret = eth_dev_validate_mtu(port_id, &dev_info, mtu);
		if (ret != 0)
			return ret;


static int
eth_dev_validate_mtu(uint16_t port_id, struct rte_eth_dev_info *dev_info,
		uint16_t mtu)
{
	uint32_t overhead_len;
	uint32_t frame_size;

	if (mtu < dev_info->min_mtu) {
		RTE_ETHDEV_LOG_LINE(ERR,
			"MTU (%u) < device min MTU (%u) for port_id %u",
			mtu, dev_info->min_mtu, port_id);
		return -EINVAL;
	}
	if (mtu > dev_info->max_mtu) {
		RTE_ETHDEV_LOG_LINE(ERR,
			"MTU (%u) > device max MTU (%u) for port_id %u",
			mtu, dev_info->max_mtu, port_id);
		return -EINVAL;
	}

  reply	other threads:[~2024-10-15 15:26 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-15  3:09 [PATCH v1 00/18] net/r8169: add r8169 pmd to dpdk Howard Wang
2024-10-15  3:09 ` [PATCH v1 01/18] net/r8169: add PMD driver skeleton Howard Wang
2024-10-15  3:09 ` [PATCH v1 02/18] net/r8169: add logging structure Howard Wang
2024-10-15  3:09 ` [PATCH v1 03/18] net/r8169: add hardware registers access routines Howard Wang
2024-10-15  3:09 ` [PATCH v1 04/18] net/r8169: implement core logic for Tx/Rx Howard Wang
2024-10-15  3:09 ` [PATCH v1 05/18] net/r8169: add support for hw config Howard Wang
2024-10-15  3:09 ` [PATCH v1 06/18] net/r8169: add phy registers access routines Howard Wang
2024-10-15  3:09 ` [PATCH v1 07/18] net/r8169: add support for hardware operations Howard Wang
2024-10-15  3:09 ` [PATCH v1 08/18] net/r8169: add support for phy configuration Howard Wang
2024-10-15  3:09 ` [PATCH v1 09/18] net/r8169: add support for hw initialization Howard Wang
2024-10-15  3:09 ` [PATCH v1 10/18] net/r8169: add link status and interrupt management Howard Wang
2024-10-15  3:09 ` [PATCH v1 11/18] net/r8169: implement Rx path Howard Wang
2024-10-15  3:09 ` [PATCH v1 12/18] net/r8169: implement Tx path Howard Wang
2024-10-15 15:29   ` Stephen Hemminger
2024-10-15 15:30   ` Stephen Hemminger
2024-10-15 15:35     ` Stephen Hemminger
2024-10-15 15:31   ` Stephen Hemminger
2024-10-15 15:32   ` Stephen Hemminger
2024-10-15  3:09 ` [PATCH v1 13/18] net/r8169: implement device statistics Howard Wang
2024-10-15  3:09 ` [PATCH v1 14/18] net/r8169: implement promisc and allmulti modes Howard Wang
2024-10-15  3:09 ` [PATCH v1 15/18] net/r8169: impelment MTU configuration Howard Wang
2024-10-15 15:26   ` Stephen Hemminger [this message]
2024-10-15  3:09 ` [PATCH v1 16/18] net/r8169: add support for getting fw version Howard Wang
2024-10-15  3:09 ` [PATCH v1 17/18] net/r8169: add driver_start and driver_stop Howard Wang
2024-10-15  3:09 ` [PATCH v1 18/18] doc/guides/nics: add documents for r8169 pmd Howard Wang
2024-10-15 15:54 ` [PATCH v1 00/18] net/r8169: add r8169 pmd to dpdk Stephen Hemminger

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=20241015082648.39684562@hermes.local \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.org \
    --cc=howard_wang@realsil.com.cn \
    --cc=pro_nic_dpdk@realtek.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: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).