All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Wei Fang" <wei.fang@nxp.com>
Cc: imx@lists.linux.dev, krzk+dt@kernel.org, Frank.Li@kernel.org,
	robh@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH v7 net-next 12/15] net: dsa: netc: add FDB, STP, MTU, port setup and host flooding support
Date: Thu, 14 May 2026 08:21:22 +0000	[thread overview]
Message-ID: <20260514082123.5C9B2C2BCB7@smtp.kernel.org> (raw)
In-Reply-To: <20260513030454.1666570-13-wei.fang@nxp.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] Standalone port isolation is completely broken due to shared VLAN and ignored dsa_db in FDB operations.
--

commit 31eef54688ed02b9e54753924a74c9b8e24c10a6
Author: Wei Fang <wei.fang@nxp.com>

net: dsa: netc: add FDB, STP, MTU, port setup and host flooding support

This commit expands the NETC switch driver with foundational features
including FDB/MDB management, STP state handling, MTU configuration, and
host flooding support. It initially supports standalone port mode, using
VLAN 0 as the PVID for ingress frames.

> diff --git a/drivers/net/dsa/netc/netc_main.c b/drivers/net/dsa/netc/netc_main.c
> --- a/drivers/net/dsa/netc/netc_main.c
> +++ b/drivers/net/dsa/netc/netc_main.c
[ ... ]
> @@ -531,6 +848,278 @@ static void netc_switch_get_ip_revision(struct netc_switch *priv)
[ ... ]
> +static int netc_port_fdb_add(struct dsa_switch *ds, int port,
> +			     const unsigned char *addr, u16 vid,
> +			     struct dsa_db db)
> +{
> +	struct netc_port *np = NETC_PORT(ds, port);
> +
> +	/* Currently, only support standalone port mode, so only
> +	 * NETC_STANDALONE_PVID (= 0) is supported here.
> +	 */
> +	if (vid != NETC_STANDALONE_PVID)
> +		return -EOPNOTSUPP;
> +
> +	return netc_port_set_fdb_entry(np, addr, vid);
> +}

Does this allow cross-talk between standalone ports, bypassing the host
networking stack?

Since all active ports are mapped to a single shared VLAN
(NETC_STANDALONE_PVID = 0), they rely on disabled MAC learning and dropping
unknown frames to maintain isolation.

However, because the dsa_db argument is ignored here, a static FDB entry
added to one port (e.g., via bridge fdb add) is forced into the shared VID 0,
making it globally visible.

If a packet arrives on a different port destined for this MAC address, will
the hardware switch match the FDB entry and forward it directly between the
ports?

[ ... ]
> @@ -796,6 +1396,7 @@ static int netc_switch_probe(struct pci_dev *pdev,
>  	ds->num_tx_queues = NETC_TC_NUM;
>  	ds->ops = &netc_switch_ops;
>  	ds->phylink_mac_ops = &netc_phylink_mac_ops;
> +	ds->fdb_isolation = true;
>  	ds->priv = priv;
>  	priv->ds = ds;

How does the ignored dsa_db argument in the FDB callbacks interact with this
fdb_isolation declaration? Drivers that set fdb_isolation to true usually
receive the bridge database through the dsa_db argument to isolate FDBs of
multiple bridges or standalone ports.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260513030454.1666570-1-wei.fang@nxp.com?part=12

  reply	other threads:[~2026-05-14  8:21 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-13  3:04 [PATCH v7 net-next 00/15] Add preliminary NETC switch support for i.MX94 Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 01/15] dt-bindings: net: dsa: update the description of 'dsa,member' property Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 02/15] dt-bindings: net: dsa: add NETC switch Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 03/15] net: enetc: add pre-boot initialization for i.MX94 switch Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 04/15] net: enetc: add basic operations to the FDB table Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 05/15] net: enetc: add support for the "Add" operation to VLAN filter table Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 06/15] net: enetc: add support for the "Update" operation to buffer pool table Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 07/15] net: enetc: add support for "Add" and "Delete" operations to IPFT Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 08/15] net: enetc: add multiple command BD rings support Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 09/15] net: dsa: add NETC switch tag support Wei Fang
2026-05-14  5:22   ` sashiko-bot
2026-05-15  2:55     ` Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 10/15] net: dsa: netc: introduce NXP NETC switch driver for i.MX94 Wei Fang
2026-05-14  5:57   ` sashiko-bot
2026-05-15  3:36   ` Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 11/15] net: dsa: netc: add phylink MAC operations Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 12/15] net: dsa: netc: add FDB, STP, MTU, port setup and host flooding support Wei Fang
2026-05-14  8:21   ` sashiko-bot [this message]
2026-05-13  3:04 ` [PATCH v7 net-next 13/15] net: dsa: netc: initialize buffer pool table and implement flow-control Wei Fang
2026-05-14  8:51   ` sashiko-bot
2026-05-13  3:04 ` [PATCH v7 net-next 14/15] net: dsa: netc: add support for the standardized counters Wei Fang
2026-05-13  3:04 ` [PATCH v7 net-next 15/15] net: dsa: netc: add support for ethtool private statistics Wei Fang
2026-05-14 10:27   ` sashiko-bot

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=20260514082123.5C9B2C2BCB7@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=Frank.Li@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=imx@lists.linux.dev \
    --cc=krzk+dt@kernel.org \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    --cc=wei.fang@nxp.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 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.