tunneling: Don't shadow vport when generating cache.
[sliver-openvswitch.git] / vswitchd / proc-net-compat.c
index 72eb7be..e3b7ee4 100644 (file)
 #include "dynamic-string.h"
 #include "hash.h"
 #include "netlink-protocol.h"
+#include "netlink-socket.h"
 #include "netlink.h"
 #include "ofpbuf.h"
 #include "openvswitch/brcompat-netlink.h"
 #include "hmap.h"
 #include "shash.h"
 #include "svec.h"
-
-#define THIS_MODULE VLM_proc_net_compat
 #include "vlog.h"
 
+VLOG_DEFINE_THIS_MODULE(proc_net_compat);
+
 /* Netlink socket to bridge compatibility kernel module. */
 static struct nl_sock *brc_sock;
 
@@ -72,7 +73,7 @@ proc_net_compat_init(void)
 static int
 set_proc_file(const char *dir, const char *file, const char *data)
 {
-    struct ofpbuf request, *reply;
+    struct ofpbuf request;
     int retval;
 
     ofpbuf_init(&request, 0);
@@ -84,9 +85,8 @@ set_proc_file(const char *dir, const char *file, const char *data)
         nl_msg_put_string(&request, BRC_GENL_A_PROC_DATA, data);
     }
 
-    retval = nl_sock_transact(brc_sock, &request, &reply);
+    retval = nl_sock_transact(brc_sock, &request, NULL);
     ofpbuf_uninit(&request);
-    ofpbuf_delete(reply);
     if (retval) {
         VLOG_WARN_RL(&rl, "failed to %s /proc/%s/%s (%s)",
                      data ? "update" : "remove", dir, file, strerror(retval));
@@ -249,8 +249,7 @@ proc_net_compat_update_vlan(const char *tagged_dev, const char *trunk_dev,
         /* 'tagged_dev' is not attached to any compat_vlan.  Find the
          * compat_vlan corresponding to (trunk_dev,vid) to attach it to, or
          * create a new compat_vlan if none exists for (trunk_dev,vid). */
-        HMAP_FOR_EACH_WITH_HASH (vlan, struct compat_vlan, trunk_node,
-                                 hash_vlan(trunk_dev, vid),
+        HMAP_FOR_EACH_WITH_HASH (vlan, trunk_node, hash_vlan(trunk_dev, vid),
                                  &vlans_by_trunk) {
             if (!strcmp(trunk_dev, vlan->trunk_dev) && vid == vlan->vid) {
                 break;
@@ -341,7 +340,7 @@ update_vlan_config(void)
     ds_init(&ds);
     ds_put_cstr(&ds, "VLAN Dev name     | VLAN ID\n"
                 "Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD\n");
-    HMAP_FOR_EACH (vlan, struct compat_vlan, trunk_node, &vlans_by_trunk) {
+    HMAP_FOR_EACH (vlan, trunk_node, &vlans_by_trunk) {
         ds_put_format(&ds, "%-15s| %d  | %s\n",
                       vlan->vlan_dev, vlan->vid, vlan->trunk_dev);
     }