From: "Łukasz Majewski" <lukasz.majewski@mailbox.org>
To: Jakub Kicinski <kuba@kernel.org>
Cc: andrew@lunn.ch, shawnguo@kernel.org, krzk+dt@kernel.org,
linux-kernel@vger.kernel.org, edumazet@google.com,
netdev@vger.kernel.org, pabeni@redhat.com, andrew+netdev@lunn.ch,
davem@davemloft.net, conor+dt@kernel.org, horms@kernel.org,
richardcochran@gmail.com, robh@kernel.org, imx@lists.linux.dev,
linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org,
wahrenst@gmx.net, s.hauer@pengutronix.de, kernel@pengutronix.de,
festevam@gmail.com
Subject: Re: [net-next,v22,4/7] net: mtip: Add net_device_ops functions to the L2 switch driver
Date: Tue, 3 Feb 2026 11:03:41 +0100 [thread overview]
Message-ID: <20260203110341.1ce21455@wsk> (raw)
In-Reply-To: <20260203014247.824561-2-kuba@kernel.org>
Hi Jakub,
> This is an AI-generated review of your patch. The human sending this
> email has considered the AI review valid, or at least plausible.
>
> For local reproduction steps see
> https://netdev-ai.bots.linux.dev/ai-local.html ---
> net: mtip: Add net_device_ops functions to the L2 switch driver
>
> This patch adds net_device_ops callbacks for the MTIP L2 switch
> driver, including transmit, multicast configuration, MAC address
> handling, and timeout recovery functions.
>
> > diff --git a/drivers/net/ethernet/freescale/mtipsw/mtipl2sw.c
> > b/drivers/net/ethernet/freescale/mtipsw/mtipl2sw.c ---
> > a/drivers/net/ethernet/freescale/mtipsw/mtipl2sw.c +++
> > b/drivers/net/ethernet/freescale/mtipsw/mtipl2sw.c
>
> [ ... ]
>
> > +static netdev_tx_t mtip_start_xmit_port(struct sk_buff *skb,
> > + struct net_device *dev,
> > int port) +{
> > + struct mtip_ndev_priv *priv = netdev_priv(dev);
> > + struct switch_enet_private *fep = priv->fep;
> > + unsigned short status;
> > + unsigned int index;
> > + struct cbd_t *bdp;
> > + void *bufaddr;
> > +
> > + spin_lock_bh(&fep->hw_lock);
>
> [ ... ]
>
> > + /* Save skb pointer. */
> > + fep->tx_skbuff[index] = skb;
>
> mtip_start_xmit_port() stores sk_buffs in fep->tx_skbuff[index] and
> creates DMA mappings, but mtip_switch_tx() which should complete TX
> operations is empty:
>
> static void mtip_switch_tx(struct switch_enet_private *fep)
> {
> }
>
> The NAPI poll handler mtip_rx_napi() calls mtip_switch_tx() to reclaim
> transmitted buffers. Since it does nothing, won't every transmitted
> packet leak the skb and DMA mapping? Also, dirty_tx is never
> advanced, so the TX ring will fill (cur_tx == dirty_tx) and stop
> accepting packets.
>
> jakub: maybe add a TODO comment transiently here, since later patch
> implements the cleanup?
The mtip_switch_tx() is empty as we have agreed, that I will divide
this driver to several patches to ease the review.
Adding TODO seems to only make AI review happy, as:
- The patch which adds support for FEC_MTIP_L2SW in Kconfig will be
sent after the driver is accepted to net-next
- Those commits are even now bisectable when FEC_MTIP_L2SW is
enabled (when I test the setup).
Anyway, if you still would like to have the TODO comment, then please
give me a hint how it shall be written to make the AI happy...
And maybe a few my thoughts:
1. AI review seems to bring each time different issues - even the
"grammatic" ones were not provided with the first AI generated review.
2. I have tried to setup claudie> to run the patch set through it -
however, it requires a paid account on a cloud/AI vendor (and I guess
that different vendors' AI engines produce different output for the same
"AI prompt")?
Anyway, I do appreciate the AI review - it provides very deep insights
through the code.
>
> > +static void mtip_timeout(struct net_device *dev, unsigned int
> > txqueue) +{
> > + struct mtip_ndev_priv *priv = netdev_priv(dev);
> > +
> > + dev->stats.tx_errors++;
>
> Jakub Kicinski noted in v16 review that tx_errors are already counted
> by the network stack, and the statistic is exposed per-queue in
> sysfs. Does incrementing tx_errors here double-count timeout events?
>
> https://lore.kernel.org/all/20250725151618.0bc84bdb@kernel.org/
>
Yes, this shall been removed.
> > + DO_ONCE(mtip_print_hw_state, dev);
> > +
> > + schedule_work(&priv->tx_timeout_work);
> > +}
--
Best regards,
Łukasz Majewski
next prev parent reply other threads:[~2026-02-03 10:13 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-31 23:34 [net-next v22 0/7] net: mtip: Add support for MTIP imx287 L2 switch driver Lukasz Majewski
2026-01-31 23:34 ` [net-next v22 1/7] dt-bindings: net: Add MTIP L2 switch description Lukasz Majewski
2026-01-31 23:34 ` [net-next v22 2/7] net: mtip: The L2 switch driver for imx287 Lukasz Majewski
2026-02-03 1:39 ` [net-next,v22,2/7] " Jakub Kicinski
2026-02-03 20:19 ` Łukasz Majewski
2026-02-04 1:47 ` Jakub Kicinski
2026-02-04 9:24 ` Łukasz Majewski
2026-01-31 23:34 ` [net-next v22 3/7] net: mtip: Add buffers management functions to the L2 switch driver Lukasz Majewski
2026-01-31 23:34 ` [net-next v22 4/7] net: mtip: Add net_device_ops " Lukasz Majewski
2026-02-03 1:42 ` [net-next,v22,4/7] " Jakub Kicinski
2026-02-03 10:03 ` Łukasz Majewski [this message]
2026-02-03 13:32 ` Andrew Lunn
2026-01-31 23:34 ` [net-next v22 5/7] net: mtip: Add mtip_switch_{rx|tx} " Lukasz Majewski
2026-01-31 23:34 ` [net-next v22 6/7] net: mtip: Extend the L2 switch driver with management operations Lukasz Majewski
2026-01-31 23:34 ` [net-next v22 7/7] net: mtip: Extend the L2 switch driver for imx287 with bridge operations Lukasz Majewski
2026-02-03 1:44 ` [net-next,v22,7/7] " Jakub Kicinski
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=20260203110341.1ce21455@wsk \
--to=lukasz.majewski@mailbox.org \
--cc=andrew+netdev@lunn.ch \
--cc=andrew@lunn.ch \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=festevam@gmail.com \
--cc=horms@kernel.org \
--cc=imx@lists.linux.dev \
--cc=kernel@pengutronix.de \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=richardcochran@gmail.com \
--cc=robh@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
--cc=wahrenst@gmx.net \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.