projects
/
openvswitch
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
openflow-1.0: Rename ofp_match to ofp10_match, OFPFW_* to OFPFW10_*.
[openvswitch]
/
datapath
/
dp_notify.c
diff --git
a/datapath/dp_notify.c
b/datapath/dp_notify.c
index 5d41d27ef6a34c23369af46c04c1bbba66998dff..13085d665c7c8fbb57e389977e53236c316cb71a 100644
(file)
--- a/
datapath/dp_notify.c
+++ b/
datapath/dp_notify.c
@@
-1,5
+1,5
@@
/*
/*
- * Copyright (c) 2007-201
1 Nicira Networks
.
+ * Copyright (c) 2007-201
2 Nicira, Inc
.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of version 2 of the GNU General Public
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of version 2 of the GNU General Public
@@
-29,38
+29,40
@@
static int dp_device_event(struct notifier_block *unused, unsigned long event,
struct net_device *dev = ptr;
struct vport *vport;
struct net_device *dev = ptr;
struct vport *vport;
- if (is_internal_dev(dev))
- vport = internal_dev_get_vport(dev);
+ if (
ovs_
is_internal_dev(dev))
+ vport =
ovs_
internal_dev_get_vport(dev);
else
else
- vport = netdev_get_vport(dev);
+ vport =
ovs_
netdev_get_vport(dev);
if (!vport)
return NOTIFY_DONE;
switch (event) {
case NETDEV_UNREGISTER:
if (!vport)
return NOTIFY_DONE;
switch (event) {
case NETDEV_UNREGISTER:
- if (!is_internal_dev(dev)) {
+ if (!
ovs_
is_internal_dev(dev)) {
struct sk_buff *notify;
struct sk_buff *notify;
+ struct datapath *dp = vport->dp;
notify = ovs_vport_cmd_build_info(vport, 0, 0,
OVS_VPORT_CMD_DEL);
notify = ovs_vport_cmd_build_info(vport, 0, 0,
OVS_VPORT_CMD_DEL);
- dp_detach_port(vport);
+
ovs_
dp_detach_port(vport);
if (IS_ERR(notify)) {
if (IS_ERR(notify)) {
- netlink_set_err(
INIT_NET_GENL_SOCK
, 0,
- dp_vport_multicast_group.id,
+ netlink_set_err(
GENL_SOCK(ovs_dp_get_net(dp))
, 0,
+
ovs_
dp_vport_multicast_group.id,
PTR_ERR(notify));
break;
}
PTR_ERR(notify));
break;
}
- genlmsg_multicast(notify, 0, dp_vport_multicast_group.id,
- GFP_KERNEL);
+ genlmsg_multicast_netns(ovs_dp_get_net(dp), notify, 0,
+ ovs_dp_vport_multicast_group.id,
+ GFP_KERNEL);
}
break;
case NETDEV_CHANGENAME:
if (vport->port_no != OVSP_LOCAL) {
}
break;
case NETDEV_CHANGENAME:
if (vport->port_no != OVSP_LOCAL) {
- dp_sysfs_del_if(vport);
- dp_sysfs_add_if(vport);
+
ovs_
dp_sysfs_del_if(vport);
+
ovs_
dp_sysfs_add_if(vport);
}
break;
}
}
break;
}
@@
-68,6
+70,6
@@
static int dp_device_event(struct notifier_block *unused, unsigned long event,
return NOTIFY_DONE;
}
return NOTIFY_DONE;
}
-struct notifier_block dp_device_notifier = {
+struct notifier_block
ovs_
dp_device_notifier = {
.notifier_call = dp_device_event
};
.notifier_call = dp_device_event
};