| From a34dcb5b605af1097be5452d187ee2ff44dba586 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Sun, 26 Sep 2021 00:59:27 +0200 |
| Subject: net: dsa: rtl8366rb: Fix off-by-one bug |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Linus Walleij <linus.walleij@linaro.org> |
| |
| [ Upstream commit 5f5f12f5d4b108399130bb5c11f07765851d9cdb ] |
| |
| The max VLAN number with non-4K VLAN activated is 15, and the |
| range is 0..15. Not 16. |
| |
| The impact should be low since we by default have 4K VLAN and |
| thus have 4095 VLANs to play with in this switch. There will |
| not be a problem unless the code is rewritten to only use |
| 16 VLANs. |
| |
| Fixes: d8652956cf37 ("net: dsa: realtek-smi: Add Realtek SMI driver") |
| Cc: Mauri Sandberg <sandberg@mailfence.com> |
| Cc: DENG Qingfang <dqfext@gmail.com> |
| Cc: Florian Fainelli <f.fainelli@gmail.com> |
| Reviewed-by: Alvin Šipraga <alsi@bang-olufsen.dk> |
| Reviewed-by: Vladimir Oltean <olteanv@gmail.com> |
| Signed-off-by: Linus Walleij <linus.walleij@linaro.org> |
| Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/net/dsa/rtl8366rb.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/net/dsa/rtl8366rb.c b/drivers/net/dsa/rtl8366rb.c |
| index 7f731bf369980..d047004360615 100644 |
| --- a/drivers/net/dsa/rtl8366rb.c |
| +++ b/drivers/net/dsa/rtl8366rb.c |
| @@ -1264,7 +1264,7 @@ static int rtl8366rb_set_mc_index(struct realtek_smi *smi, int port, int index) |
| |
| static bool rtl8366rb_is_vlan_valid(struct realtek_smi *smi, unsigned int vlan) |
| { |
| - unsigned int max = RTL8366RB_NUM_VLANS; |
| + unsigned int max = RTL8366RB_NUM_VLANS - 1; |
| |
| if (smi->vlan4k_enabled) |
| max = RTL8366RB_NUM_VIDS - 1; |
| -- |
| 2.33.0 |
| |