projects
/
openvswitch
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
xenserver: Must pass --no-wait to ovs-vsctl before starting ovs-vswitchd.
[openvswitch]
/
vswitchd
/
bridge.c
diff --git
a/vswitchd/bridge.c
b/vswitchd/bridge.c
index 63b0c9b21fe8c1d378bb2f19bff5bb66496721cf..596040b45482c161c6bd3808018e2db9d8fb2d48 100644
(file)
--- a/
vswitchd/bridge.c
+++ b/
vswitchd/bridge.c
@@
-417,7
+417,12
@@
set_up_iface(const struct ovsrec_interface *iface_cfg, struct iface *iface,
memset(&netdev_options, 0, sizeof netdev_options);
netdev_options.name = iface_cfg->name;
memset(&netdev_options, 0, sizeof netdev_options);
netdev_options.name = iface_cfg->name;
- netdev_options.type = iface_cfg->type;
+ if (!strcmp(iface_cfg->type, "internal")) {
+ /* An "internal" config type maps to a netdev "system" type. */
+ netdev_options.type = "system";
+ } else {
+ netdev_options.type = iface_cfg->type;
+ }
netdev_options.args = &options;
netdev_options.ethertype = NETDEV_ETH_TYPE_NONE;
netdev_options.may_create = true;
netdev_options.args = &options;
netdev_options.ethertype = NETDEV_ETH_TYPE_NONE;
netdev_options.may_create = true;
@@
-435,6
+440,11
@@
set_up_iface(const struct ovsrec_interface *iface_cfg, struct iface *iface,
const char *iface_type = iface_cfg->type && strlen(iface_cfg->type)
? iface_cfg->type : NULL;
const char *iface_type = iface_cfg->type && strlen(iface_cfg->type)
? iface_cfg->type : NULL;
+ /* An "internal" config type maps to a netdev "system" type. */
+ if (iface_type && !strcmp(iface_type, "internal")) {
+ iface_type = "system";
+ }
+
if (!iface_type || !strcmp(netdev_type, iface_type)) {
error = netdev_reconfigure(iface->netdev, &options);
} else {
if (!iface_type || !strcmp(netdev_type, iface_type)) {
error = netdev_reconfigure(iface->netdev, &options);
} else {
@@
-1520,7
+1530,6
@@
static void
bridge_reconfigure_controller(const struct ovsrec_open_vswitch *ovs_cfg,
struct bridge *br)
{
bridge_reconfigure_controller(const struct ovsrec_open_vswitch *ovs_cfg,
struct bridge *br)
{
- char *pfx = xasprintf("bridge.%s.controller", br->name);
const struct ovsrec_controller *c;
c = bridge_get_controller(ovs_cfg, br);
const struct ovsrec_controller *c;
c = bridge_get_controller(ovs_cfg, br);
@@
-1614,7
+1623,6
@@
bridge_reconfigure_controller(const struct ovsrec_open_vswitch *ovs_cfg,
ofproto_set_probe_interval(br->ofproto, 5);
ofproto_set_failure(br->ofproto, false);
}
ofproto_set_probe_interval(br->ofproto, 5);
ofproto_set_failure(br->ofproto, false);
}
- free(pfx);
ofproto_set_controller(br->ofproto, br->controller);
}
ofproto_set_controller(br->ofproto, br->controller);
}