Messages in this thread | | | Date | Sun, 25 Jun 2023 17:54:45 +0300 | From | Vladimir Oltean <> | Subject | Re: [PATCH net-next v2 7/7] net: dsa: vsc73xx: fix MTU configuration |
| |
On Sun, Jun 25, 2023 at 01:53:42PM +0200, Pawel Dembicki wrote: > Switch in MAXLEN register store maximum size of data frame. > MTU size is 18 bytes smaller than frame size. > > Current settings causes problems with packet forwarding. > This patch fix MTU settings to proper values. > > Fixes: fb77ffc6ec86 ("net: dsa: vsc73xx: make the MTU configurable") > Reviewed-by: Linus Walleij <linus.walleij@linaro.org> > Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com> > ---
Please split this patch from the rest of the series and re-target it towards net.git.
> v2: > - fix commit message style issue > > drivers/net/dsa/vitesse-vsc73xx-core.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/dsa/vitesse-vsc73xx-core.c b/drivers/net/dsa/vitesse-vsc73xx-core.c > index c946464489ab..59bb3dbe780a 100644 > --- a/drivers/net/dsa/vitesse-vsc73xx-core.c > +++ b/drivers/net/dsa/vitesse-vsc73xx-core.c > @@ -979,17 +979,18 @@ static int vsc73xx_change_mtu(struct dsa_switch *ds, int port, int new_mtu) > struct vsc73xx *vsc = ds->priv; > > return vsc73xx_write(vsc, VSC73XX_BLOCK_MAC, port, > - VSC73XX_MAXLEN, new_mtu); > + VSC73XX_MAXLEN, new_mtu + ETH_HLEN + ETH_FCS_LEN); > } > > /* According to application not "VSC7398 Jumbo Frames" setting > - * up the MTU to 9.6 KB does not affect the performance on standard > + * up the frame size to 9.6 KB does not affect the performance on standard > * frames. It is clear from the application note that > * "9.6 kilobytes" == 9600 bytes. > */ > static int vsc73xx_get_max_mtu(struct dsa_switch *ds, int port) > { > - return 9600; > + /* max mtu = 9600 - ETH_HLEN - ETH_FCS_LEN */ > + return 9582;
This can also be:
return 9600 - ETH_HLEN - ETH_FCS_LEN;
since the arithmetic is on constants, it can be evaluated at compile time and it results in the same generated code, but the comment is no longer necessary.
> } > > static void vsc73xx_port_stp_state_set(struct dsa_switch *ds, int port, > -- > 2.34.1 >
| |