RE: [PATCH v1 net] net: mscc: ocelot: remove buggy and useless write to ANA_PFC_PFC_CFG

From: Joakim Zhang
Date: Thu Sep 16 2021 - 22:35:22 EST



Hi Vladimir,

> -----Original Message-----
> From: Vladimir Oltean <vladimir.oltean@xxxxxxx>
> Sent: 2021年9月16日 19:49
> To: Colin Foster <colin.foster@xxxxxxxxxxxxxxxx>
> Cc: Claudiu Manoil <claudiu.manoil@xxxxxxx>; Alexandre Belloni
> <alexandre.belloni@xxxxxxxxxxx>; UNGLinuxDriver@xxxxxxxxxxxxx; David S.
> Miller <davem@xxxxxxxxxxxxx>; Jakub Kicinski <kuba@xxxxxxxxxx>;
> netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH v1 net] net: mscc: ocelot: remove buggy and useless write
> to ANA_PFC_PFC_CFG
>
> On Wed, Sep 15, 2021 at 06:09:37PM -0700, Colin Foster wrote:
> > A useless write to ANA_PFC_PFC_CFG was left in while refactoring
> > ocelot to phylink. Since priority flow control is disabled, writing
> > the speed has no effect.
> >
> > Further, it was using ethtool.h SPEED_ instead of OCELOT_SPEED_
> > macros, which are incorrectly offset for GENMASK.
> >
> > Lastly, for priority flow control to properly function, some scenarios
> > would rely on the rate adaptation from the PCS while the MAC speed
> > would be fixed. So it isn't used, and even if it was, neither "speed"
> > nor "mac_speed" are necessarily the correct values to be used.
> >
> > Fixes: e6e12df625f2 ("net: mscc: ocelot: convert to phylink")
> > Signed-off-by: Colin Foster <colin.foster@xxxxxxxxxxxxxxxx>
> > ---
> > drivers/net/ethernet/mscc/ocelot.c | 4 ----
> > 1 file changed, 4 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/mscc/ocelot.c
> > b/drivers/net/ethernet/mscc/ocelot.c
> > index c581b955efb3..08be0440af28 100644
> > --- a/drivers/net/ethernet/mscc/ocelot.c
> > +++ b/drivers/net/ethernet/mscc/ocelot.c
> > @@ -569,10 +569,6 @@ void ocelot_phylink_mac_link_up(struct ocelot
> *ocelot, int port,
> > ocelot_port_writel(ocelot_port, DEV_CLOCK_CFG_LINK_SPEED(speed),
> > DEV_CLOCK_CFG);
> >
> > - /* No PFC */
> > - ocelot_write_gix(ocelot, ANA_PFC_PFC_CFG_FC_LINK_SPEED(speed),
> > - ANA_PFC_PFC_CFG, port);
> > -
>
> This will conflict with the other patch.... why didn't you send both as part of a
> series? By not doing that, you are telling patchwork to build-test them in
> parallel, which of course does not work:
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatchw
> ork.kernel.org%2Fproject%2Fnetdevbpf%2Fpatch%2F20210916012341.518512-
> 1-colin.foster%40in-advantage.com%2F&amp;data=04%7C01%7Cqiangqing.zh
> ang%40nxp.com%7C546aa03ab17b45f0891a08d97908095f%7C686ea1d3bc2b
> 4c6fa92cd99c5c301635%7C0%7C0%7C637673897688805938%7CUnknown%7
> CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiL
> CJXVCI6Mn0%3D%7C1000&amp;sdata=fmGI6K2dS36tm5xuuKLKdVF1pEj9umv
> FLA8kyfXWD3A%3D&amp;reserved=0
>
> Also, why didn't you bump the version counter of the patch, and we're still at v1
> despite the earlier attempt?
>
> git format-patch -2 --cover-letter --subject-prefix="PATCH v3 net" -o
> /opt/patches/linux/ocelot-phylink-fixes/v3/
> ./scripts/get_maintainer.pl /opt/patches/linux/ocelot-phylink-fixes/v3/*.patch
> ./scripts/checkpatch.pl --strict
> /opt/patches/linux/ocelot-phylink-fixes/v3/*.patch
> # Go through patches, write change log compared to v2 using vimdiff, meld, git
> range-diff, whatever # Write cover letter summarizing what changes and why.
> If fixing bugs explain the impact.
> git send-email \
> --to='netdev@xxxxxxxxxxxxxxx' \
> --to='linux-kernel@xxxxxxxxxxxxxxx' \
> --cc='Vladimir Oltean <vladimir.oltean@xxxxxxx>' \
> --cc='Claudiu Manoil <claudiu.manoil@xxxxxxx>' \
> --cc='Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>' \
> --cc='UNGLinuxDriver@xxxxxxxxxxxxx' \
> --cc='"David S. Miller" <davem@xxxxxxxxxxxxx>' \
> --cc='Jakub Kicinski <kuba@xxxxxxxxxx>' \
> /opt/patches/linux/ocelot-phylink-fixes/v3/*.patch
>
> Reviewed-by: Vladimir Oltean <vladimir.oltean@xxxxxxx>
>
> Please keep this tag but resend a new version. You can download the patch
> with the review tags automatically using:
> git b4 20210916010938.517698-1-colin.foster@xxxxxxxxxxxxxxxx
> git b4 20210916012341.518512-1-colin.foster@xxxxxxxxxxxxxxxx
>
> where "git b4" is an alias configured like this in ~/.gitconfig:
>
> [b4]
> midmask =
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.ker
> nel.org%2Fr%2F%2525s&amp;data=04%7C01%7Cqiangqing.zhang%40nxp.co
> m%7C546aa03ab17b45f0891a08d97908095f%7C686ea1d3bc2b4c6fa92cd99c5
> c301635%7C0%7C0%7C637673897688815892%7CUnknown%7CTWFpbGZsb3d
> 8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3
> D%7C1000&amp;sdata=t8N%2F%2FAnLVLtoMDzNDL%2Fv7ixEkBeiIqB6Go%2F
> zD19gisE%3D&amp;reserved=0
> [alias]
> b4 = "!f() { b4 am -t -o - $@ | git am -3; }; f"

I came across this detailed suggestions, sometime we need download the patch from the patchwork,
so I have a try with above method(adding these two symbol in my .gitconfig), but I met below error,
could you please tell me what I am missing? Thanks.

$ git b4 20210916010938.517698-1-colin.foster@xxxxxxxxxxxxxxxx
f() { b4 am -t -o - $@ | git am -3; }; f: 1: f() { b4 am -t -o - $@ | git am -3; }; f: b4: not found

Best Regards,
Joakim Zhang