net: bridge: mcast: add rt_protocol field to the port group struct
We need to be able to differentiate between pg entries created by user-space and the kernel when we start generating S,G entries for IGMPv3/MLDv2's fast path. User-space entries are created by default as RTPROT_STATIC and the kernel entries are RTPROT_KERNEL. Later we can allow user-space to provide the entry rt_protocol so we can differentiate between who added the entries specifically (e.g. clag, admin, frr etc). Signed-off-by: Nikolay Aleksandrov <nikolay@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
7d07a68c25
commit
8f8cb77e0b
@@ -246,6 +246,7 @@ struct net_bridge_port_group {
|
||||
unsigned char flags;
|
||||
unsigned char filter_mode;
|
||||
unsigned char grp_query_rexmit_cnt;
|
||||
unsigned char rt_protocol;
|
||||
|
||||
struct hlist_head src_list;
|
||||
unsigned int src_ents;
|
||||
@@ -804,7 +805,7 @@ struct net_bridge_port_group *
|
||||
br_multicast_new_port_group(struct net_bridge_port *port, struct br_ip *group,
|
||||
struct net_bridge_port_group __rcu *next,
|
||||
unsigned char flags, const unsigned char *src,
|
||||
u8 filter_mode);
|
||||
u8 filter_mode, u8 rt_protocol);
|
||||
int br_mdb_hash_init(struct net_bridge *br);
|
||||
void br_mdb_hash_fini(struct net_bridge *br);
|
||||
void br_mdb_notify(struct net_device *dev, struct net_bridge_mdb_entry *mp,
|
||||
|
Reference in New Issue
Block a user