bridge: mcast: Simplify MDB entry creation
authorIdo Schimmel <idosch@nvidia.com>
Tue, 18 Oct 2022 06:40:01 +0000 (09:40 +0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Oct 2022 13:01:08 +0000 (14:01 +0100)
Before creating a new MDB entry, br_multicast_new_group() will call
br_mdb_ip_get() to see if one exists and return it if so.

Therefore, simply call br_multicast_new_group() and omit the call to
br_mdb_ip_get().

Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Acked-by: Nikolay Aleksandrov <razor@blackwall.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_mdb.c

index 589ff49..321be94 100644 (file)
@@ -866,7 +866,6 @@ static int br_mdb_add_group(struct net_bridge *br, struct net_bridge_port *port,
        unsigned long now = jiffies;
        unsigned char flags = 0;
        u8 filter_mode;
-       int err;
 
        __mdb_entry_to_br_ip(entry, &group, mdb_attrs);
 
@@ -892,13 +891,9 @@ static int br_mdb_add_group(struct net_bridge *br, struct net_bridge_port *port,
                return -EINVAL;
        }
 
-       mp = br_mdb_ip_get(br, &group);
-       if (!mp) {
-               mp = br_multicast_new_group(br, &group);
-               err = PTR_ERR_OR_ZERO(mp);
-               if (err)
-                       return err;
-       }
+       mp = br_multicast_new_group(br, &group);
+       if (IS_ERR(mp))
+               return PTR_ERR(mp);
 
        /* host join */
        if (!port) {