aboutsummaryrefslogtreecommitdiffstats
path: root/net/bridge/br_netlink.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/bridge/br_netlink.c')
-rw-r--r--net/bridge/br_netlink.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/net/bridge/br_netlink.c b/net/bridge/br_netlink.c
index ffb0dc4cc0e..e5f9ece3c9a 100644
--- a/net/bridge/br_netlink.c
+++ b/net/bridge/br_netlink.c
@@ -188,6 +188,8 @@ static int br_rtm_setlink(struct sk_buff *skb, struct nlmsghdr *nlh, void *arg)
188 188
189 p->state = new_state; 189 p->state = new_state;
190 br_log_state(p); 190 br_log_state(p);
191 br_ifinfo_notify(RTM_NEWLINK, p);
192
191 return 0; 193 return 0;
192} 194}
193 195
@@ -208,6 +210,7 @@ static struct rtnl_link_ops br_link_ops __read_mostly = {
208 .priv_size = sizeof(struct net_bridge), 210 .priv_size = sizeof(struct net_bridge),
209 .setup = br_dev_setup, 211 .setup = br_dev_setup,
210 .validate = br_validate, 212 .validate = br_validate,
213 .dellink = br_dev_delete,
211}; 214};
212 215
213int __init br_netlink_init(void) 216int __init br_netlink_init(void)
@@ -218,19 +221,24 @@ int __init br_netlink_init(void)
218 if (err < 0) 221 if (err < 0)
219 goto err1; 222 goto err1;
220 223
221 err = __rtnl_register(PF_BRIDGE, RTM_GETLINK, NULL, br_dump_ifinfo); 224 err = __rtnl_register(PF_BRIDGE, RTM_GETLINK, NULL,
225 br_dump_ifinfo, NULL);
222 if (err) 226 if (err)
223 goto err2; 227 goto err2;
224 err = __rtnl_register(PF_BRIDGE, RTM_SETLINK, br_rtm_setlink, NULL); 228 err = __rtnl_register(PF_BRIDGE, RTM_SETLINK,
229 br_rtm_setlink, NULL, NULL);
225 if (err) 230 if (err)
226 goto err3; 231 goto err3;
227 err = __rtnl_register(PF_BRIDGE, RTM_NEWNEIGH, br_fdb_add, NULL); 232 err = __rtnl_register(PF_BRIDGE, RTM_NEWNEIGH,
233 br_fdb_add, NULL, NULL);
228 if (err) 234 if (err)
229 goto err3; 235 goto err3;
230 err = __rtnl_register(PF_BRIDGE, RTM_DELNEIGH, br_fdb_delete, NULL); 236 err = __rtnl_register(PF_BRIDGE, RTM_DELNEIGH,
237 br_fdb_delete, NULL, NULL);
231 if (err) 238 if (err)
232 goto err3; 239 goto err3;
233 err = __rtnl_register(PF_BRIDGE, RTM_GETNEIGH, NULL, br_fdb_dump); 240 err = __rtnl_register(PF_BRIDGE, RTM_GETNEIGH,
241 NULL, br_fdb_dump, NULL);
234 if (err) 242 if (err)
235 goto err3; 243 goto err3;
236 244