From nobody Mon Feb 9 00:54:19 2026 Received: from mail-ed1-f42.google.com (mail-ed1-f42.google.com [209.85.208.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CC54A24469B for ; Sun, 2 Nov 2025 10:08:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762078094; cv=none; b=ZljwdznAKc63SjtAuGnitplCCKh/W+sdH/EmBpxp+neMk1MzUtSoWmRuTg3BM5wDXm7hzk7/i4FHUj4HCVoUsJt80PJh9nXCSXn2sG7BDjYcnFGwIbMpFQEQVCrntlylcZ407otCYQXUu2R/cQXUkkkC6hk3TgHdiyIqDz7/3mw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762078094; c=relaxed/simple; bh=Kk0QwPaRAZ9ti5p3bBxKE+qKelVinAAEdVK9YCEF2+g=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RuQgY9W++biW2HF96IsPYBn+MGpMgX3rnHRH7fDtIgPG/Po24O/LJOOK+BryP9V6w4K7vilCNNNyVBI66w+CPCwtMoJLSn2q4MRql71KqnRbFEU8je5CQ8XaoiwvoB68mHDwFFWmmGMD6wFHPBKyi0mOJuPI29P8I9etOZWMN30= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=K/KTyXku; arc=none smtp.client-ip=209.85.208.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="K/KTyXku" Received: by mail-ed1-f42.google.com with SMTP id 4fb4d7f45d1cf-63bdfd73e6eso8788780a12.0 for ; Sun, 02 Nov 2025 02:08:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1762078091; x=1762682891; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dcBg3WESmBtU/e7ZXw1BuO2NrMipWvi+FGk/MOSixCE=; b=K/KTyXkujk4gMcIOIfid7Zycjh2U0WLek5ZmKKSzX2MMkHhrVzvFwmIwEihbWpJqXV avakgRb05B77x/8Mvep4rdWBasqkuDyUPnJaqo2cOQt232Tcp5Fx8vnYMBhUTQ0GqCZ9 ZcTbS2mTORYgN/OwAEt1fNh3m3fQ+c/DTgVRyq38b3vKzc5nUD95mSqgqQESblB93SC/ K2SsV71kqvR0hAJpDnwjR4nBd9lwpDax+JOTej0JEaq4pzypD0BeG8HNvlQdX4BNk5kT M6QQXQklEWzlAZ6G90n06LGZqDd/nsy1Z9dP770i9l/EH2LBXz7zLXkOIWTROpqoHEju 9dOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762078091; x=1762682891; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dcBg3WESmBtU/e7ZXw1BuO2NrMipWvi+FGk/MOSixCE=; b=RaizlPIxa18aF13U6Cvgpj0CN4zJj7iaq6RL11rQJgxirf9N6xNDt6XRRy+Us+/UTl e6/PvFax8SU12nyOPBCQjWsV/yMhYWWwcxBwTTbcM0QIJPwk21qhwwvW09khlrCLAYDo c5i/sNdzwvnGTfd8MdwSZ+/5aTN2gdG9MN9cg2gnAAu2cx50pzjwoJWGv0vowqPsJYSS QZqw3s6gIw4o643DhRzdWQh7ATVCEc1i1SJWJNGCFg6YXI/RDIyqF2wqEFg9avNtGIPZ 2PEfyrJ3AhpMMOsgRqA+osFeaZT0aEBqzrp3FkBQe6H9TP0JgpsTKM4goY1OsWmz5tE3 0Mcg== X-Forwarded-Encrypted: i=1; AJvYcCU0hMzopMxMYN0C1Iqs89CByS6GesWKMOUDcgONrBVXlqdoyyI98yjWglwBZiblAK+prviPNVgMxPQFIdA=@vger.kernel.org X-Gm-Message-State: AOJu0YzKbzyICaJ2a9V5FTVp3SPeg3J5q9B1J2zKy32BkK5+nwyg4jrU jcW3rht7RobzmrZeMv25n84x2rMvfX+pgYEBlMAIduU/y/IrZZ1pWPcp X-Gm-Gg: ASbGnctCqv1iLLUFV7Wo48LO0Bj3Fxq+MgW73bh3urdqCgrKEjiDVeVj5DOjxz99Y4I TK0oq+XDgJyAYyWiNVvJez4VkSOgjL13Rq0VNTr+683kTf4WzmnZN/BKTtjCTw5mvaWlORu255f 9p3lORSQF0cN33cIoP64ttEhZiKDveyCqLhcmXdbB5BRKrV8Q4wGM3DsSHIeC5os4BIxiUaCMpw CydvA2vXDxtFjNHqpHWR3ZTrWz2IYUO0WffUrvUuiHUBplmlRBPzKhAvquq+fV3DflBtAWIPWMu /Tqn5cgpq4lSS/YYJ/AKCEdYHIGF9uwXMBmamzra3hjTHIuchEcZcPNKDzV4YaqMFG/Oa0FwE7W zAboaa9VfqF/dZQpCTx64OxKwDYT8VTKxVfdnjFqFfFPAXROqUoNUAqnHEGqTEZB9NaWyyeK7EX mNDF4EJvtP+JW1Z6D87SlnxccyfNbmF/nn+L/Mlhhe3vxXw6PUY9yyflRljVqjnKXcFpo= X-Google-Smtp-Source: AGHT+IFEwg0H/ZOkoKvaHy719X02ovYGNzJvMYxgE1bjzM/SuoLcpFybWMe1xEm+9adJKjvtSOJKmA== X-Received: by 2002:a05:6402:5243:b0:639:f648:1093 with SMTP id 4fb4d7f45d1cf-640752fd1a8mr9106095a12.4.1762078090884; Sun, 02 Nov 2025 02:08:10 -0800 (PST) Received: from localhost (dslb-002-205-018-238.002.205.pools.vodafone-ip.de. [2.205.18.238]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-640b9857d30sm722382a12.0.2025.11.02.02.08.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Nov 2025 02:08:10 -0800 (PST) From: Jonas Gorski To: Florian Fainelli , Andrew Lunn , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Vivien Didelot Cc: Florian Fainelli , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net 2/3] net: dsa: b53: stop reading ARL entries if search is done Date: Sun, 2 Nov 2025 11:07:57 +0100 Message-ID: <20251102100758.28352-3-jonas.gorski@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251102100758.28352-1-jonas.gorski@gmail.com> References: <20251102100758.28352-1-jonas.gorski@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The switch clears the ARL_SRCH_STDN bit when the search is done, i.e. it finished traversing the ARL table. This means that there will be no valid result, so we should not attempt to read and process any further entries. We only ever check the validity of the entries for 4 ARL bin chips, and only after having passed the first entry to the b53_fdb_copy(). This means that we always pass an invalid entry at the end to the b53_fdb_copy(). b53_fdb_copy() does check the validity though before passing on the entry, so it never gets passed on. On < 4 ARL bin chips, we will even continue reading invalid entries until we reach the result limit. Fixes: 1da6df85c6fb ("net: dsa: b53: Implement ARL add/del/dump operations") Signed-off-by: Jonas Gorski Reviewed-by: Florian Fainelli --- drivers/net/dsa/b53/b53_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/dsa/b53/b53_common.c b/drivers/net/dsa/b53/b53_com= mon.c index 77571a46311e..82cce7b82da2 100644 --- a/drivers/net/dsa/b53/b53_common.c +++ b/drivers/net/dsa/b53/b53_common.c @@ -2018,7 +2018,7 @@ static int b53_arl_search_wait(struct b53_device *dev) do { b53_read8(dev, B53_ARLIO_PAGE, offset, ®); if (!(reg & ARL_SRCH_STDN)) - return 0; + return -ENOENT; =20 if (reg & ARL_SRCH_VLID) return 0; --=20 2.43.0