diff mbox

[ovs-dev,RFC,1/5] in-band: use open_type when opening internal device

Message ID 1468861225-8569-2-git-send-email-cascardo@redhat.com
State RFC
Headers show

Commit Message

Thadeu Lima de Souza Cascardo July 18, 2016, 5 p.m. UTC
in-band code will open a device that it expects to be the main internal port of
the bridge. However, it's possible that the correct type is a different one. For
dpif-netdev, it might be a tap device, or a dummy device for dummy datapaths.
ofproto_port_open_type will give the correct type.

While this doesn't cause any problems right now, as the needed type would be
opened already, a later patch assumes netdev with different types cannot be
opened.
---
 ofproto/in-band.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/ofproto/in-band.c b/ofproto/in-band.c
index 36e80f4..e3ee41a 100644
--- a/ofproto/in-band.c
+++ b/ofproto/in-band.c
@@ -422,9 +422,10 @@  in_band_create(struct ofproto *ofproto, const char *local_name,
     struct in_band *in_band;
     struct netdev *local_netdev;
     int error;
+    const char *type = ofproto_port_open_type(ofproto->type, "internal");
 
     *in_bandp = NULL;
-    error = netdev_open(local_name, "internal", &local_netdev);
+    error = netdev_open(local_name, type, &local_netdev);
     if (error) {
         VLOG_ERR("%s: failed to initialize in-band control: cannot open "
                  "datapath local port %s (%s)", ofproto->name,