Patch "net: dsa: lan9303: allow vid != 0 in port_fdb_{add|del} methods" has been added to the 4.19-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    net: dsa: lan9303: allow vid != 0 in port_fdb_{add|del} methods

to the 4.19-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     net-dsa-lan9303-allow-vid-0-in-port_fdb_-add-del-met.patch
and it can be found in the queue-4.19 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit bc6a9bca0f5ec5d92b20d0cab4dd88bd4cd0df26
Author: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxxxx>
Date:   Wed May 31 16:38:26 2023 +0200

    net: dsa: lan9303: allow vid != 0 in port_fdb_{add|del} methods
    
    [ Upstream commit 5a59a58ec25d44f853c26bdbfda47d73b3067435 ]
    
    LAN9303 doesn't associate FDB (ALR) entries with VLANs, it has just one
    global Address Logic Resolution table [1].
    
    Ignore VID in port_fdb_{add|del} methods, go on with the global table. This
    is the same semantics as hellcreek or RZ/N1 implement.
    
    Visible symptoms:
    LAN9303_MDIO 5b050000.ethernet-1:00: port 2 failed to delete 00:xx:xx:xx:xx:cf vid 1 from fdb: -2
    LAN9303_MDIO 5b050000.ethernet-1:00: port 2 failed to add 00:xx:xx:xx:xx:cf vid 1 to fdb: -95
    
    [1] https://ww1.microchip.com/downloads/en/DeviceDoc/00002308A.pdf
    
    Fixes: 0620427ea0d6 ("net: dsa: lan9303: Add fdb/mdb manipulation")
    Signed-off-by: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxxxx>
    Reviewed-by: Vladimir Oltean <olteanv@xxxxxxxxx>
    Link: https://lore.kernel.org/r/20230531143826.477267-1-alexander.sverdlin@xxxxxxxxxxx
    Signed-off-by: Jakub Kicinski <kuba@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/dsa/lan9303-core.c b/drivers/net/dsa/lan9303-core.c
index f976b3d64593a..80ac5efb0a7a9 100644
--- a/drivers/net/dsa/lan9303-core.c
+++ b/drivers/net/dsa/lan9303-core.c
@@ -1191,8 +1191,6 @@ static int lan9303_port_fdb_add(struct dsa_switch *ds, int port,
 	struct lan9303 *chip = ds->priv;
 
 	dev_dbg(chip->dev, "%s(%d, %pM, %d)\n", __func__, port, addr, vid);
-	if (vid)
-		return -EOPNOTSUPP;
 
 	return lan9303_alr_add_port(chip, addr, port, false);
 }
@@ -1204,8 +1202,6 @@ static int lan9303_port_fdb_del(struct dsa_switch *ds, int port,
 	struct lan9303 *chip = ds->priv;
 
 	dev_dbg(chip->dev, "%s(%d, %pM, %d)\n", __func__, port, addr, vid);
-	if (vid)
-		return -EOPNOTSUPP;
 	lan9303_alr_del_port(chip, addr, port);
 
 	return 0;



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux