From: Alexander H Duyck <alexander.duyck@gmail.com>
To: Lukasz Majewski <lukma@denx.de>, Andrew Lunn <andrew@lunn.ch>,
Vladimir Oltean <olteanv@gmail.com>
Cc: Vivien Didelot <vivien.didelot@gmail.com>,
Florian Fainelli <f.fainelli@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
Russell King <linux@armlinux.org.uk>,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 1/3] dsa: marvell: Provide per device information about max frame size
Date: Thu, 15 Dec 2022 08:48:10 -0800 [thread overview]
Message-ID: <4d16ffd327d193f8c1f7c40f968fda90a267348e.camel@gmail.com> (raw)
In-Reply-To: <20221215144536.3810578-1-lukma@denx.de>
On Thu, 2022-12-15 at 15:45 +0100, Lukasz Majewski wrote:
> Different Marvell DSA switches support different size of max frame
> bytes to be sent.
>
> For example mv88e6185 supports max 1632 bytes, which is now in-driver
> standard value. On the other hand - mv88e6250 supports 2048 bytes.
>
> As this value is internal and may be different for each switch IC,
> new entry in struct mv88e6xxx_info has been added to store it.
>
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
> ---
> Changes for v2:
> - Define max_frame_size with default value of 1632 bytes,
> - Set proper value for the mv88e6250 switch SoC (linkstreet) family
> ---
> drivers/net/dsa/mv88e6xxx/chip.c | 13 ++++++++++++-
> drivers/net/dsa/mv88e6xxx/chip.h | 1 +
> 2 files changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
> index 2ca3cbba5764..7ae4c389ce50 100644
> --- a/drivers/net/dsa/mv88e6xxx/chip.c
> +++ b/drivers/net/dsa/mv88e6xxx/chip.c
> @@ -3093,7 +3093,9 @@ static int mv88e6xxx_get_max_mtu(struct dsa_switch *ds, int port)
> if (chip->info->ops->port_set_jumbo_size)
> return 10240 - VLAN_ETH_HLEN - EDSA_HLEN - ETH_FCS_LEN;
> else if (chip->info->ops->set_max_frame_size)
> - return 1632 - VLAN_ETH_HLEN - EDSA_HLEN - ETH_FCS_LEN;
> + return (chip->info->max_frame_size - VLAN_ETH_HLEN
> + - EDSA_HLEN - ETH_FCS_LEN);
> +
> return 1522 - VLAN_ETH_HLEN - EDSA_HLEN - ETH_FCS_LEN;
> }
>
>
Is there any specific reason for triggering this based on the existance
of the function call? Why not just replace:
else if (chip->info->ops->set_max_frame_size)
with:
else if (chip->info->max_frame_size)
Otherwise my concern is one gets defined without the other leading to a
future issue as 0 - extra headers will likely wrap and while the return
value may be a signed int, it is usually stored in an unsigned int so
it would effectively uncap the MTU.
Actually you could take this one step further since all values should
be 1522 or greater you could just drop the else/if and replace the last
line with "max_t(int, chip->info->max_frame_size, 1522) - (headers)".
next prev parent reply other threads:[~2022-12-15 16:48 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-15 14:45 Lukasz Majewski
2022-12-15 14:45 ` [PATCH v2 2/3] net: dsa: mv88e6xxx: add support for MV88E6020 switch Lukasz Majewski
2022-12-15 14:45 ` [PATCH v2 3/3] net: dsa: mv88e6xxx: add support for MV88E6071 switch Lukasz Majewski
2022-12-15 16:48 ` Alexander H Duyck [this message]
2022-12-16 13:05 ` [PATCH v2 1/3] dsa: marvell: Provide per device information about max frame size Lukasz Majewski
2022-12-16 17:24 ` Alexander Duyck
2022-12-19 12:00 ` Lukasz Majewski
2022-12-20 17:33 ` Lukasz Majewski
2022-12-16 4:20 ` Jakub Kicinski
2022-12-16 11:56 ` Lukasz Majewski
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=4d16ffd327d193f8c1f7c40f968fda90a267348e.camel@gmail.com \
--to=alexander.duyck@gmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=f.fainelli@gmail.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=lukma@denx.de \
--cc=netdev@vger.kernel.org \
--cc=olteanv@gmail.com \
--cc=vivien.didelot@gmail.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
all inboxes | Powered by JetHome®