p = br_multicast_new_port_group(cfg->p, &cfg->group, *pp, flags, NULL,
                                        MCAST_INCLUDE, cfg->rt_protocol, extack);
-       if (unlikely(!p)) {
-               NL_SET_ERR_MSG_MOD(extack, "Couldn't allocate new (S, G) port group");
+       if (unlikely(!p))
                return -ENOMEM;
-       }
+
        rcu_assign_pointer(*pp, p);
        if (!(flags & MDB_PG_FLAGS_PERMANENT) && !cfg->src_entry)
                mod_timer(&p->timer,
        p = br_multicast_new_port_group(cfg->p, &cfg->group, *pp, flags, NULL,
                                        cfg->filter_mode, cfg->rt_protocol,
                                        extack);
-       if (unlikely(!p)) {
-               NL_SET_ERR_MSG_MOD(extack, "Couldn't allocate new (*, G) port group");
+       if (unlikely(!p))
                return -ENOMEM;
-       }
 
        err = br_mdb_add_group_srcs(cfg, p, brmctx, extack);
        if (err)
 
        struct net_bridge_port_group *p;
 
        p = kzalloc(sizeof(*p), GFP_ATOMIC);
-       if (unlikely(!p))
+       if (unlikely(!p)) {
+               NL_SET_ERR_MSG_MOD(extack, "Couldn't allocate new port group");
                return NULL;
+       }
 
        p->key.addr = *group;
        p->key.port = port;
        if (!br_multicast_is_star_g(group) &&
            rhashtable_lookup_insert_fast(&port->br->sg_port_tbl, &p->rhnode,
                                          br_sg_port_rht_params)) {
+               NL_SET_ERR_MSG_MOD(extack, "Couldn't insert new port group");
                kfree(p);
                return NULL;
        }