From: kernel test robot <lkp@intel.com>
To: David Yang <mmyangfl@gmail.com>, netdev@vger.kernel.org
Cc: oe-kbuild-all@lists.linux.dev, David Yang <mmyangfl@gmail.com>,
Andrew Lunn <andrew@lunn.ch>, Vladimir Oltean <olteanv@gmail.com>,
Eric Dumazet <edumazet@kernel.org>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH net] net: dsa: motorcomm: Isolate all ports during chip setup
Date: Sun, 25 Oct 2026 06:53:45 +0800 [thread overview]
Message-ID: <202610250645.V7tGJ85r-lkp@intel.com> (raw)
In-Reply-To: <20261024144023.1010237-1-mmyangfl@gmail.com>
Hi David,
kernel test robot noticed the following build warnings:
[auto build test WARNING on net/main]
url: https://github.com/intel-lab-lkp/linux/commits/David-Yang/net-dsa-motorcomm-Isolate-all-ports-during-chip-setup/20261024-224021
base: net/main
patch link: https://lore.kernel.org/r/20261024144023.1010237-1-mmyangfl%40gmail.com
patch subject: [PATCH net] net: dsa: motorcomm: Isolate all ports during chip setup
config: arm64-randconfig-1000-20261025 (https://download.01.org/0day-ci/archive/20261025/202610250645.V7tGJ85r-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261025/202610250645.V7tGJ85r-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202610250645.V7tGJ85r-lkp@intel.com/
All warnings (new ones prefixed by >>):
drivers/net/dsa/motorcomm/chip.c: In function 'yt921x_chip_setup_dsa':
>> drivers/net/dsa/motorcomm/chip.c:2262:6: warning: unused variable 'port' [-Wunused-variable]
int port;
^~~~
>> drivers/net/dsa/motorcomm/chip.c:2259:16: warning: unused variable 'cpu_ports_mask' [-Wunused-variable]
unsigned long cpu_ports_mask;
^~~~~~~~~~~~~~
vim +/port +2262 drivers/net/dsa/motorcomm/chip.c
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2255
95e6bcab3c08e8 drivers/net/dsa/yt921x.c David Yang 2026-01-31 2256 static int yt921x_chip_setup_dsa(struct yt921x_priv *priv)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2257 {
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2258 struct dsa_switch *ds = &priv->ds;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 @2259 unsigned long cpu_ports_mask;
9f8888984eb095 drivers/net/dsa/yt921x.c David Yang 2026-04-30 2260 u32 ctrls[2];
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2261 u32 ctrl;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 @2262 int port;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2263 int res;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2264
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2265 /* Enable DSA */
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2266 priv->cpu_ports_mask = dsa_cpu_ports(ds);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2267
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2268 ctrl = YT921X_EXT_CPU_PORT_TAG_EN | YT921X_EXT_CPU_PORT_PORT_EN |
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2269 YT921X_EXT_CPU_PORT_PORT(__ffs(priv->cpu_ports_mask));
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2270 res = yt921x_reg_write(priv, YT921X_EXT_CPU_PORT, ctrl);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2271 if (res)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2272 return res;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2273
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2274 /* Setup software switch */
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2275 ctrl = YT921X_CPU_COPY_TO_EXT_CPU;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2276 res = yt921x_reg_write(priv, YT921X_CPU_COPY, ctrl);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2277 if (res)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2278 return res;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2279
47373f4f561962 drivers/net/dsa/motorcomm/chip.c David Yang 2026-10-24 2280 ctrl = GENMASK(10, 0) & ~priv->cpu_ports_mask;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2281 res = yt921x_reg_write(priv, YT921X_FILTER_UNK_UCAST, ctrl);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2282 if (res)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2283 return res;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2284 res = yt921x_reg_write(priv, YT921X_FILTER_UNK_MCAST, ctrl);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2285 if (res)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2286 return res;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2287
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2288 /* YT921x does not support native DSA port bridging, so we use port
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2289 * isolation to emulate it. However, be especially careful that port
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2290 * isolation takes _after_ FDB lookups, i.e. if an FDB entry (from
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2291 * another bridge) is matched and the destination port (in another
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2292 * bridge) is blocked, the packet will be dropped instead of flooding to
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2293 * the "bridged" ports, thus we need to trap and handle those packets by
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2294 * software.
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2295 *
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2296 * If there is no more than one bridge, we might be able to drop them
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2297 * directly given some conditions are met, but we trap them in all cases
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2298 * for now.
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2299 */
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2300 ctrl = 0;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2301 for (int i = 0; i < YT921X_PORT_NUM; i++)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2302 ctrl |= YT921X_ACT_UNK_ACTn_TRAP(i);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2303 res = yt921x_reg_write(priv, YT921X_ACT_UNK_UCAST, ctrl);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2304 if (res)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2305 return res;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2306 res = yt921x_reg_write(priv, YT921X_ACT_UNK_MCAST, ctrl);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2307 if (res)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2308 return res;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2309
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2310 /* Tagged VID 0 should be treated as untagged, which confuses the
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2311 * hardware a lot
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2312 */
9f8888984eb095 drivers/net/dsa/yt921x.c David Yang 2026-04-30 2313 ctrls[0] = YT921X_VLAN_CTRLa_LEARN_DIS | YT921X_VLAN_CTRLa_PORTS_M;
9f8888984eb095 drivers/net/dsa/yt921x.c David Yang 2026-04-30 2314 ctrls[1] = 0;
9f8888984eb095 drivers/net/dsa/yt921x.c David Yang 2026-04-30 2315 res = yt921x_reg64_write(priv, YT921X_VLANn_CTRL(0), ctrls);
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2316 if (res)
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2317 return res;
186623f4aa724c drivers/net/dsa/yt921x.c David Yang 2025-10-17 2318
95e6bcab3c08e8 drivers/net/dsa/yt921x.c David Yang 2026-01-31 2319 return 0;
95e6bcab3c08e8 drivers/net/dsa/yt921x.c David Yang 2026-01-31 2320 }
95e6bcab3c08e8 drivers/net/dsa/yt921x.c David Yang 2026-01-31 2321
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
prev parent reply other threads:[~2026-10-24 22:54 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-24 14:40 David Yang
2026-10-24 22:53 ` kernel test robot [this message]
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=202610250645.V7tGJ85r-lkp@intel.com \
--to=lkp@intel.com \
--cc=andrew@lunn.ch \
--cc=edumazet@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mmyangfl@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=olteanv@gmail.com \
--cc=pabeni@redhat.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®