list: Rename struct list to struct ovs_list
authorThomas Graf <tgraf@noironetworks.com>
Mon, 15 Dec 2014 13:10:38 +0000 (14:10 +0100)
committerThomas Graf <tgraf@noironetworks.com>
Mon, 15 Dec 2014 13:15:12 +0000 (14:15 +0100)
struct list is a common name and can't be used in public headers.

Signed-off-by: Thomas Graf <tgraf@noironetworks.com>
Acked-by: Ben Pfaff <blp@nicira.com>
70 files changed:
CodingStyle.md
lib/fat-rwlock.c
lib/fat-rwlock.h
lib/guarded-list.c
lib/guarded-list.h
lib/jsonrpc.c
lib/lacp.c
lib/list.h
lib/mac-learning.c
lib/mac-learning.h
lib/mcast-snooping.c
lib/mcast-snooping.h
lib/netdev-dpdk.c
lib/netdev-dummy.c
lib/netdev-provider.h
lib/netdev.c
lib/netlink-notifier.c
lib/nx-match.c
lib/ofp-msgs.c
lib/ofp-msgs.h
lib/ofp-print.c
lib/ofp-util.c
lib/ofp-util.h
lib/ofpbuf.c
lib/ofpbuf.h
lib/ovs-numa.c
lib/ovs-rcu.c
lib/ovs-thread.c
lib/ovsdb-idl-provider.h
lib/ovsdb-idl.c
lib/process.c
lib/rconn.c
lib/rculist.h
lib/rstp-common.h
lib/rstp.c
lib/rtbsd.c
lib/rtbsd.h
lib/seq.c
lib/seq.h
lib/stp.c
lib/unixctl.c
lib/vconn.c
lib/vconn.h
lib/vlog.c
lib/vlog.h
ofproto/bond.c
ofproto/bundles.c
ofproto/connmgr.c
ofproto/connmgr.h
ofproto/ofproto-dpif-ipfix.c
ofproto/ofproto-dpif-monitor.c
ofproto/ofproto-dpif-upcall.c
ofproto/ofproto-dpif-xlate.c
ofproto/ofproto-dpif.c
ofproto/ofproto-dpif.h
ofproto/ofproto-provider.h
ofproto/ofproto.c
ofproto/pinsched.c
ofproto/pinsched.h
ovsdb/jsonrpc-server.c
ovsdb/ovsdb.h
ovsdb/row.h
ovsdb/server.h
ovsdb/transaction.c
ovsdb/trigger.h
tests/test-list.c
utilities/ovs-ofctl.c
utilities/ovs-vsctl.c
vswitchd/bridge.c
vtep/vtep-ctl.c

index b69b5d6..77b1572 100644 (file)
@@ -83,7 +83,7 @@ e.g.:
     /* An event that will wake the following call to poll_block(). */
     struct poll_waiter {
         /* Set when the waiter is created. */
-        struct list node;           /* Element in global waiters list. */
+        struct ovs_list node;       /* Element in global waiters list. */
         int fd;                     /* File descriptor. */
         short int events;           /* Events to wait for (POLLIN, POLLOUT). */
         poll_fd_func *function;     /* Callback function, if any, or null. */
index be53b56..89cff1d 100644 (file)
@@ -30,7 +30,7 @@ struct fat_rwlock_slot {
      *
      * fat_rwlock_destroy() sets 'rwlock' to NULL to indicate that this
      * slot may be destroyed. */
-    struct list list_node;      /* In struct rwlock's 'threads' list. */
+    struct ovs_list list_node;  /* In struct rwlock's 'threads' list. */
     struct fat_rwlock *rwlock;  /* Owner. */
 
     /* Mutex.
index 27e3c22..257cd56 100644 (file)
@@ -33,7 +33,7 @@ struct OVS_LOCKABLE fat_rwlock {
 
     /* Contains "struct fat_rwlock_slot"s, one for each thread that has taken
      * this lock.  Guarded by 'mutex'. */
-    struct list threads OVS_GUARDED;
+    struct ovs_list threads OVS_GUARDED;
     struct ovs_mutex mutex;
 };
 
index cbb2030..da0a43e 100644 (file)
@@ -51,7 +51,7 @@ guarded_list_is_empty(const struct guarded_list *list)
  * the list. */
 size_t
 guarded_list_push_back(struct guarded_list *list,
-                       struct list *node, size_t max)
+                       struct ovs_list *node, size_t max)
 {
     size_t retval = 0;
 
@@ -65,10 +65,10 @@ guarded_list_push_back(struct guarded_list *list,
     return retval;
 }
 
-struct list *
+struct ovs_list *
 guarded_list_pop_front(struct guarded_list *list)
 {
-    struct list *node = NULL;
+    struct ovs_list *node = NULL;
 
     ovs_mutex_lock(&list->mutex);
     if (list->n) {
@@ -81,7 +81,7 @@ guarded_list_pop_front(struct guarded_list *list)
 }
 
 size_t
-guarded_list_pop_all(struct guarded_list *list, struct list *elements)
+guarded_list_pop_all(struct guarded_list *list, struct ovs_list *elements)
 {
     size_t n;
 
index df17cbc..c19f64e 100644 (file)
@@ -24,7 +24,7 @@
 
 struct guarded_list {
     struct ovs_mutex mutex;
-    struct list list;
+    struct ovs_list list;
     size_t n;
 };
 
@@ -38,9 +38,9 @@ void guarded_list_destroy(struct guarded_list *);
 
 bool guarded_list_is_empty(const struct guarded_list *);
 
-size_t guarded_list_push_back(struct guarded_list *, struct list *,
+size_t guarded_list_push_back(struct guarded_list *, struct ovs_list *,
                               size_t max);
-struct list *guarded_list_pop_front(struct guarded_list *);
-size_t guarded_list_pop_all(struct guarded_list *, struct list *);
+struct ovs_list *guarded_list_pop_front(struct guarded_list *);
+size_t guarded_list_pop_all(struct guarded_list *, struct ovs_list *);
 
 #endif /* guarded-list.h */
index a9f6a2a..d571656 100644 (file)
@@ -46,7 +46,7 @@ struct jsonrpc {
     struct json_parser *parser;
 
     /* Output. */
-    struct list output;         /* Contains "struct ofpbuf"s. */
+    struct ovs_list output;     /* Contains "struct ofpbuf"s. */
     size_t output_count;        /* Number of elements in "output". */
     size_t backlog;
 };
index ce5343b..46d5bfb 100644 (file)
@@ -92,7 +92,7 @@ enum slave_status {
 };
 
 struct lacp {
-    struct list node;             /* Node in all_lacps list. */
+    struct ovs_list node;         /* Node in all_lacps list. */
     char *name;                   /* Name of this lacp object. */
     uint8_t sys_id[ETH_ADDR_LEN]; /* System ID. */
     uint16_t sys_priority;        /* System Priority. */
@@ -132,8 +132,8 @@ struct slave {
 };
 
 static struct ovs_mutex mutex;
-static struct list all_lacps__ = LIST_INITIALIZER(&all_lacps__);
-static struct list *const all_lacps OVS_GUARDED_BY(mutex) = &all_lacps__;
+static struct ovs_list all_lacps__ = LIST_INITIALIZER(&all_lacps__);
+static struct ovs_list *const all_lacps OVS_GUARDED_BY(mutex) = &all_lacps__;
 
 static void lacp_update_attached(struct lacp *) OVS_REQUIRES(mutex);
 
index 53582ee..f2aa335 100644 (file)
 #include "util.h"
 
 /* Doubly linked list head or element. */
-struct list {
-    struct list *prev;     /* Previous list element. */
-    struct list *next;     /* Next list element. */
+struct ovs_list {
+    struct ovs_list *prev;     /* Previous list element. */
+    struct ovs_list *next;     /* Next list element. */
 };
 
 #define LIST_INITIALIZER(LIST) { LIST, LIST }
 
-static inline void list_init(struct list *);
-static inline void list_poison(struct list *);
+static inline void list_init(struct ovs_list *);
+static inline void list_poison(struct ovs_list *);
 
 /* List insertion. */
-static inline void list_insert(struct list *, struct list *);
-static inline void list_splice(struct list *before, struct list *first,
-                               struct list *last);
-static inline void list_push_front(struct list *, struct list *);
-static inline void list_push_back(struct list *, struct list *);
-static inline void list_replace(struct list *, const struct list *);
-static inline void list_moved(struct list *);
-static inline void list_move(struct list *dst, struct list *src);
+static inline void list_insert(struct ovs_list *, struct ovs_list *);
+static inline void list_splice(struct ovs_list *before, struct ovs_list *first,
+                               struct ovs_list *last);
+static inline void list_push_front(struct ovs_list *, struct ovs_list *);
+static inline void list_push_back(struct ovs_list *, struct ovs_list *);
+static inline void list_replace(struct ovs_list *, const struct ovs_list *);
+static inline void list_moved(struct ovs_list *);
+static inline void list_move(struct ovs_list *dst, struct ovs_list *src);
 
 /* List removal. */
-static inline struct list *list_remove(struct list *);
-static inline struct list *list_pop_front(struct list *);
-static inline struct list *list_pop_back(struct list *);
+static inline struct ovs_list *list_remove(struct ovs_list *);
+static inline struct ovs_list *list_pop_front(struct ovs_list *);
+static inline struct ovs_list *list_pop_back(struct ovs_list *);
 
 /* List elements. */
-static inline struct list *list_front(const struct list *);
-static inline struct list *list_back(const struct list *);
+static inline struct ovs_list *list_front(const struct ovs_list *);
+static inline struct ovs_list *list_back(const struct ovs_list *);
 
 /* List properties. */
-static inline size_t list_size(const struct list *);
-static inline bool list_is_empty(const struct list *);
-static inline bool list_is_singleton(const struct list *);
-static inline bool list_is_short(const struct list *);
+static inline size_t list_size(const struct ovs_list *);
+static inline bool list_is_empty(const struct ovs_list *);
+static inline bool list_is_singleton(const struct ovs_list *);
+static inline bool list_is_short(const struct ovs_list *);
 
 #define LIST_FOR_EACH(ITER, MEMBER, LIST)                               \
     for (INIT_CONTAINER(ITER, (LIST)->next, MEMBER);                    \
@@ -85,7 +85,7 @@ static inline bool list_is_short(const struct list *);
 
 /* Initializes 'list' as an empty list. */
 static inline void
-list_init(struct list *list)
+list_init(struct ovs_list *list)
 {
     list->next = list->prev = list;
 }
@@ -93,14 +93,14 @@ list_init(struct list *list)
 /* Initializes 'list' with pointers that will (probably) cause segfaults if
  * dereferenced and, better yet, show up clearly in a debugger. */
 static inline void
-list_poison(struct list *list)
+list_poison(struct ovs_list *list)
 {
     memset(list, 0xcc, sizeof *list);
 }
 
 /* Inserts 'elem' just before 'before'. */
 static inline void
-list_insert(struct list *before, struct list *elem)
+list_insert(struct ovs_list *before, struct ovs_list *elem)
 {
     elem->prev = before->prev;
     elem->next = before;
@@ -111,7 +111,7 @@ list_insert(struct list *before, struct list *elem)
 /* Removes elements 'first' though 'last' (exclusive) from their current list,
    then inserts them just before 'before'. */
 static inline void
-list_splice(struct list *before, struct list *first, struct list *last)
+list_splice(struct ovs_list *before, struct ovs_list *first, struct ovs_list *last)
 {
     if (first == last) {
         return;
@@ -132,7 +132,7 @@ list_splice(struct list *before, struct list *first, struct list *last)
 /* Inserts 'elem' at the beginning of 'list', so that it becomes the front in
    'list'. */
 static inline void
-list_push_front(struct list *list, struct list *elem)
+list_push_front(struct ovs_list *list, struct ovs_list *elem)
 {
     list_insert(list->next, elem);
 }
@@ -140,7 +140,7 @@ list_push_front(struct list *list, struct list *elem)
 /* Inserts 'elem' at the end of 'list', so that it becomes the back in
  * 'list'. */
 static inline void
-list_push_back(struct list *list, struct list *elem)
+list_push_back(struct ovs_list *list, struct ovs_list *elem)
 {
     list_insert(list, elem);
 }
@@ -148,7 +148,7 @@ list_push_back(struct list *list, struct list *elem)
 /* Puts 'elem' in the position currently occupied by 'position'.
  * Afterward, 'position' is not part of a list. */
 static inline void
-list_replace(struct list *element, const struct list *position)
+list_replace(struct ovs_list *element, const struct ovs_list *position)
 {
     element->next = position->next;
     element->next->prev = element;
@@ -163,7 +163,7 @@ list_replace(struct list *element, const struct list *position)
  * of a non-empty list.  It fails badly, however, if 'list' is the head of an
  * empty list; just use list_init() in that case. */
 static inline void
-list_moved(struct list *list)
+list_moved(struct ovs_list *list)
 {
     list->prev->next = list->next->prev = list;
 }
@@ -172,7 +172,7 @@ list_moved(struct list *list)
  * around in memory.  The effect is that, if 'src' was the head of a list, now
  * 'dst' is the head of a list containing the same elements. */
 static inline void
-list_move(struct list *dst, struct list *src)
+list_move(struct ovs_list *dst, struct ovs_list *src)
 {
     if (!list_is_empty(src)) {
         *dst = *src;
@@ -184,8 +184,8 @@ list_move(struct list *dst, struct list *src)
 
 /* Removes 'elem' from its list and returns the element that followed it.
    Undefined behavior if 'elem' is not in a list. */
-static inline struct list *
-list_remove(struct list *elem)
+static inline struct ovs_list *
+list_remove(struct ovs_list *elem)
 {
     elem->prev->next = elem->next;
     elem->next->prev = elem->prev;
@@ -194,10 +194,10 @@ list_remove(struct list *elem)
 
 /* Removes the front element from 'list' and returns it.  Undefined behavior if
    'list' is empty before removal. */
-static inline struct list *
-list_pop_front(struct list *list)
+static inline struct ovs_list *
+list_pop_front(struct ovs_list *list)
 {
-    struct list *front = list->next;
+    struct ovs_list *front = list->next;
 
     list_remove(front);
     return front;
@@ -205,10 +205,10 @@ list_pop_front(struct list *list)
 
 /* Removes the back element from 'list' and returns it.
    Undefined behavior if 'list' is empty before removal. */
-static inline struct list *
-list_pop_back(struct list *list)
+static inline struct ovs_list *
+list_pop_back(struct ovs_list *list)
 {
-    struct list *back = list->prev;
+    struct ovs_list *back = list->prev;
 
     list_remove(back);
     return back;
@@ -216,10 +216,10 @@ list_pop_back(struct list *list)
 
 /* Returns the front element in 'list_'.
    Undefined behavior if 'list_' is empty. */
-static inline struct list *
-list_front(const struct list *list_)
+static inline struct ovs_list *
+list_front(const struct ovs_list *list_)
 {
-    struct list *list = CONST_CAST(struct list *, list_);
+    struct ovs_list *list = CONST_CAST(struct ovs_list *, list_);
 
     ovs_assert(!list_is_empty(list));
 
@@ -228,10 +228,10 @@ list_front(const struct list *list_)
 
 /* Returns the back element in 'list_'.
    Undefined behavior if 'list_' is empty. */
-static inline struct list *
-list_back(const struct list *list_)
+static inline struct ovs_list *
+list_back(const struct ovs_list *list_)
 {
-    struct list *list = CONST_CAST(struct list *, list_);
+    struct ovs_list *list = CONST_CAST(struct ovs_list *, list_);
 
     ovs_assert(!list_is_empty(list));
 
@@ -241,9 +241,9 @@ list_back(const struct list *list_)
 /* Returns the number of elements in 'list'.
    Runs in O(n) in the number of elements. */
 static inline size_t
-list_size(const struct list *list)
+list_size(const struct ovs_list *list)
 {
-    const struct list *e;
+    const struct ovs_list *e;
     size_t cnt = 0;
 
     for (e = list->next; e != list; e = e->next) {
@@ -254,21 +254,21 @@ list_size(const struct list *list)
 
 /* Returns true if 'list' is empty, false otherwise. */
 static inline bool
-list_is_empty(const struct list *list)
+list_is_empty(const struct ovs_list *list)
 {
     return list->next == list;
 }
 
 /* Returns true if 'list' has exactly 1 element, false otherwise. */
 static inline bool
-list_is_singleton(const struct list *list)
+list_is_singleton(const struct ovs_list *list)
 {
     return list_is_short(list) && !list_is_empty(list);
 }
 
 /* Returns true if 'list' has 0 or 1 elements, false otherwise. */
 static inline bool
-list_is_short(const struct list *list)
+list_is_short(const struct ovs_list *list)
 {
     return list->next == list->prev;
 }
index 7dcce41..dbb457b 100644 (file)
@@ -49,7 +49,7 @@ mac_table_hash(const struct mac_learning *ml, const uint8_t mac[ETH_ADDR_LEN],
 }
 
 static struct mac_entry *
-mac_entry_from_lru_node(struct list *list)
+mac_entry_from_lru_node(struct ovs_list *list)
 {
     return CONTAINER_OF(list, struct mac_entry, lru_node);
 }
index 34dc12c..7f38339 100644 (file)
@@ -48,7 +48,7 @@ struct mac_entry {
 
     /* The following are marked guarded to prevent users from iterating over or
      * accessing a mac_entry without hodling the parent mac_learning rwlock. */
-    struct list lru_node OVS_GUARDED; /* Element in 'lrus' list. */
+    struct ovs_list lru_node OVS_GUARDED; /* Element in 'lrus' list. */
 
     /* Learned port. */
     union {
@@ -74,7 +74,7 @@ static inline bool mac_entry_is_grat_arp_locked(const struct mac_entry *mac)
 /* MAC learning table. */
 struct mac_learning {
     struct hmap table;          /* Learning table. */
-    struct list lrus OVS_GUARDED; /* In-use entries, least recently used at the
+    struct ovs_list lrus OVS_GUARDED; /* In-use entries, least recently used at the
                                      front, most recently used at the back. */
     uint32_t secret;            /* Secret for randomizing hash table. */
     unsigned long *flood_vlans; /* Bitmap of learning disabled VLANs. */
index 8651445..d99f01c 100644 (file)
@@ -91,13 +91,13 @@ mcast_table_hash(const struct mcast_snooping *ms, ovs_be32 grp_ip4,
 }
 
 static struct mcast_group_bundle *
-mcast_group_bundle_from_lru_node(struct list *list)
+mcast_group_bundle_from_lru_node(struct ovs_list *list)
 {
     return CONTAINER_OF(list, struct mcast_group_bundle, bundle_node);
 }
 
 static struct mcast_group *
-mcast_group_from_lru_node(struct list *list)
+mcast_group_from_lru_node(struct ovs_list *list)
 {
     return CONTAINER_OF(list, struct mcast_group, group_node);
 }
@@ -443,7 +443,7 @@ mcast_mrouter_age(const struct mcast_snooping *ms OVS_UNUSED,
 }
 
 static struct mcast_mrouter_bundle *
-mcast_mrouter_from_lru_node(struct list *list)
+mcast_mrouter_from_lru_node(struct ovs_list *list)
 {
     return CONTAINER_OF(list, struct mcast_mrouter_bundle, mrouter_node);
 }
@@ -518,7 +518,7 @@ mcast_snooping_flush_mrouter(struct mcast_mrouter_bundle *mrouter)
 /* Flood ports. */
 
 static struct mcast_fport_bundle *
-mcast_fport_from_list_node(struct list *list)
+mcast_fport_from_list_node(struct ovs_list *list)
 {
     return CONTAINER_OF(list, struct mcast_fport_bundle, fport_node);
 }
index f15e973..d65148c 100644 (file)
@@ -51,18 +51,18 @@ struct mcast_group {
     uint16_t vlan;
 
     /* Node in parent struct mcast_snooping group_lru. */
-    struct list group_node OVS_GUARDED;
+    struct ovs_list group_node OVS_GUARDED;
 
     /* Contains struct mcast_group_bundle (ports), least recently used
      * at the front, most recently used at the back. */
-    struct list bundle_lru OVS_GUARDED;
+    struct ovs_list bundle_lru OVS_GUARDED;
 };
 
 /* The bundle associated to the multicast group.
  * Guarded by owning 'mcast_snooping''s rwlock. */
 struct mcast_group_bundle {
     /* Node in parent struct mcast_group bundle_lru list. */
-    struct list bundle_node OVS_GUARDED;
+    struct ovs_list bundle_node OVS_GUARDED;
 
     /* When this node expires. */
     time_t expires;
@@ -75,7 +75,7 @@ struct mcast_group_bundle {
  * Guarded by owning 'mcast_snooping''s rwlock. */
 struct mcast_mrouter_bundle {
     /* Node in parent struct mcast_group mrouter_lru list. */
-    struct list mrouter_node OVS_GUARDED;
+    struct ovs_list mrouter_node OVS_GUARDED;
 
     /* When this node expires. */
     time_t expires;
@@ -91,7 +91,7 @@ struct mcast_mrouter_bundle {
  * Guarded by owning 'mcast_snooping''s rwlock */
 struct mcast_fport_bundle {
     /* Node in parent struct mcast_snooping fport_list. */
-    struct list fport_node;
+    struct ovs_list fport_node;
 
     /* VLAN tag. */
     uint16_t vlan;
@@ -107,15 +107,15 @@ struct mcast_snooping {
 
     /* Contains struct mcast_group, least recently used at the front,
      * most recently used at the back. */
-    struct list group_lru OVS_GUARDED;
+    struct ovs_list group_lru OVS_GUARDED;
 
     /* Contains struct mcast_mrouter_bundle, least recently used at the
      * front, most recently used at the back. */
-    struct list mrouter_lru OVS_GUARDED;
+    struct ovs_list mrouter_lru OVS_GUARDED;
 
     /* Contains struct mcast_fport_bundle to be flooded with multicast
      * packets in no special order. */
-    struct list fport_list OVS_GUARDED;
+    struct ovs_list fport_list OVS_GUARDED;
 
     /* Secret for randomizing hash table. */
     uint32_t secret;
index 9ac49c8..53fdb8e 100644 (file)
@@ -134,10 +134,10 @@ static int rte_eal_init_ret = ENODEV;
 static struct ovs_mutex dpdk_mutex = OVS_MUTEX_INITIALIZER;
 
 /* Contains all 'struct dpdk_dev's. */
-static struct list dpdk_list OVS_GUARDED_BY(dpdk_mutex)
+static struct ovs_list dpdk_list OVS_GUARDED_BY(dpdk_mutex)
     = LIST_INITIALIZER(&dpdk_list);
 
-static struct list dpdk_mp_list OVS_GUARDED_BY(dpdk_mutex)
+static struct ovs_list dpdk_mp_list OVS_GUARDED_BY(dpdk_mutex)
     = LIST_INITIALIZER(&dpdk_mp_list);
 
 /* This mutex must be used by non pmd threads when allocating or freeing
@@ -150,7 +150,7 @@ struct dpdk_mp {
     int mtu;
     int socket_id;
     int refcount;
-    struct list list_node OVS_GUARDED_BY(dpdk_mutex);
+    struct ovs_list list_node OVS_GUARDED_BY(dpdk_mutex);
 };
 
 /* There should be one 'struct dpdk_tx_queue' created for
@@ -167,7 +167,7 @@ struct dpdk_tx_queue {
    so we have to keep them around once they've been created
 */
 
-static struct list dpdk_ring_list OVS_GUARDED_BY(dpdk_mutex)
+static struct ovs_list dpdk_ring_list OVS_GUARDED_BY(dpdk_mutex)
     = LIST_INITIALIZER(&dpdk_ring_list);
 
 struct dpdk_ring {
@@ -176,7 +176,7 @@ struct dpdk_ring {
     struct rte_ring *cring_rx;
     int user_port_id; /* User given port no, parsed from port name */
     int eth_port_id; /* ethernet device port id */
-    struct list list_node OVS_GUARDED_BY(dpdk_mutex);
+    struct ovs_list list_node OVS_GUARDED_BY(dpdk_mutex);
 };
 
 struct netdev_dpdk {
@@ -201,7 +201,7 @@ struct netdev_dpdk {
     int link_reset_cnt;
 
     /* In dpdk_list. */
-    struct list list_node OVS_GUARDED_BY(dpdk_mutex);
+    struct ovs_list list_node OVS_GUARDED_BY(dpdk_mutex);
     rte_spinlock_t dpdkr_tx_lock;
 };
 
index f6d5070..b794b10 100644 (file)
@@ -49,7 +49,7 @@ struct reconnect;
 struct dummy_packet_stream {
     struct stream *stream;
     struct ofpbuf rxbuf;
-    struct list txq;
+    struct ovs_list txq;
 };
 
 enum dummy_packet_conn_type {
@@ -87,14 +87,14 @@ struct dummy_packet_conn {
 static struct ovs_mutex dummy_list_mutex = OVS_MUTEX_INITIALIZER;
 
 /* Contains all 'struct dummy_dev's. */
-static struct list dummy_list OVS_GUARDED_BY(dummy_list_mutex)
+static struct ovs_list dummy_list OVS_GUARDED_BY(dummy_list_mutex)
     = LIST_INITIALIZER(&dummy_list);
 
 struct netdev_dummy {
     struct netdev up;
 
     /* In dummy_list. */
-    struct list list_node OVS_GUARDED_BY(dummy_list_mutex);
+    struct ovs_list list_node OVS_GUARDED_BY(dummy_list_mutex);
 
     /* Protects all members below. */
     struct ovs_mutex mutex OVS_ACQ_AFTER(dummy_list_mutex);
@@ -110,7 +110,7 @@ struct netdev_dummy {
     FILE *tx_pcap, *rxq_pcap OVS_GUARDED;
 
     struct in_addr address, netmask;
-    struct list rxes OVS_GUARDED; /* List of child "netdev_rxq_dummy"s. */
+    struct ovs_list rxes OVS_GUARDED; /* List of child "netdev_rxq_dummy"s. */
 };
 
 /* Max 'recv_queue_len' in struct netdev_dummy. */
@@ -118,8 +118,8 @@ struct netdev_dummy {
 
 struct netdev_rxq_dummy {
     struct netdev_rxq up;
-    struct list node;           /* In netdev_dummy's "rxes" list. */
-    struct list recv_queue;
+    struct ovs_list node;       /* In netdev_dummy's "rxes" list. */
+    struct ovs_list recv_queue;
     int recv_queue_len;         /* list_size(&recv_queue). */
     struct seq *seq;            /* Reports newly queued packets. */
 };
index 0bc9f35..3fdc732 100644 (file)
@@ -57,7 +57,7 @@ struct netdev {
     int n_rxq;
     int ref_cnt;                        /* Times this devices was opened. */
     struct shash_node *node;            /* Pointer to element in global map. */
-    struct list saved_flags_list; /* Contains "struct netdev_saved_flags". */
+    struct ovs_list saved_flags_list; /* Contains "struct netdev_saved_flags". */
 };
 
 static void
index a6ab141..4a9c0f5 100644 (file)
@@ -53,7 +53,7 @@ COVERAGE_DEFINE(netdev_get_stats);
 
 struct netdev_saved_flags {
     struct netdev *netdev;
-    struct list node;           /* In struct netdev's saved_flags_list. */
+    struct ovs_list node;           /* In struct netdev's saved_flags_list. */
     enum netdev_flags saved_flags;
     enum netdev_flags saved_values;
 };
index 0be8518..713082d 100644 (file)
@@ -36,7 +36,7 @@ static void nln_report(struct nln *nln, void *change);
 
 struct nln {
     struct nl_sock *notify_sock; /* Netlink socket. */
-    struct list all_notifiers;   /* All nln notifiers. */
+    struct ovs_list all_notifiers;   /* All nln notifiers. */
     bool has_run;                /* Guard for run and wait functions. */
 
     /* Passed in by nln_create(). */
@@ -49,7 +49,7 @@ struct nln {
 struct nln_notifier {
     struct nln *nln;             /* Parent nln. */
 
-    struct list node;
+    struct ovs_list node;
     nln_notify_func *cb;
     void *aux;
 };
index 9e9aeb4..72fa29b 100644 (file)
@@ -1736,7 +1736,7 @@ oxm_maskable_fields(void)
 struct nxm_field_index {
     struct hmap_node header_node; /* In nxm_header_map. */
     struct hmap_node name_node;   /* In nxm_name_map. */
-    struct list mf_node;          /* In mf_mf_map[nf.id]. */
+    struct ovs_list mf_node;      /* In mf_mf_map[nf.id]. */
     const struct nxm_field nf;
 };
 
@@ -1744,7 +1744,7 @@ struct nxm_field_index {
 
 static struct hmap nxm_header_map;
 static struct hmap nxm_name_map;
-static struct list nxm_mf_map[MFF_N_IDS];
+static struct ovs_list nxm_mf_map[MFF_N_IDS];
 
 static void
 nxm_init(void)
index 904aba6..4dfc657 100644 (file)
@@ -860,7 +860,7 @@ static ovs_be16 *ofpmp_flags__(const struct ofp_header *);
  * use calls to the other ofpmp_*() functions to add to the body and split the
  * message into multiple parts, if necessary. */
 void
-ofpmp_init(struct list *replies, const struct ofp_header *request)
+ofpmp_init(struct ovs_list *replies, const struct ofp_header *request)
 {
     struct ofpbuf *msg;
 
@@ -878,7 +878,7 @@ ofpmp_init(struct list *replies, const struct ofp_header *request)
  * have not actually been allocated, so the caller must do so with
  * e.g. ofpbuf_put_uninit(). */
 struct ofpbuf *
-ofpmp_reserve(struct list *replies, size_t len)
+ofpmp_reserve(struct ovs_list *replies, size_t len)
 {
     struct ofpbuf *msg = ofpbuf_from_list(list_back(replies));
 
@@ -908,7 +908,7 @@ ofpmp_reserve(struct list *replies, size_t len)
 /* Appends 'len' bytes to the series of statistics replies in 'replies', and
  * returns the first byte. */
 void *
-ofpmp_append(struct list *replies, size_t len)
+ofpmp_append(struct ovs_list *replies, size_t len)
 {
     return ofpbuf_put_uninit(ofpmp_reserve(replies, len), len);
 }
@@ -924,7 +924,7 @@ ofpmp_append(struct list *replies, size_t len)
  * the first 'start_ofs' bytes, the second one containing the bytes from that
  * offset onward. */
 void
-ofpmp_postappend(struct list *replies, size_t start_ofs)
+ofpmp_postappend(struct ovs_list *replies, size_t start_ofs)
 {
     struct ofpbuf *msg = ofpbuf_from_list(list_back(replies));
 
@@ -940,7 +940,7 @@ ofpmp_postappend(struct list *replies, size_t start_ofs)
 /* Returns the OpenFlow version of the replies being constructed in 'replies',
  * which should have been initialized by ofpmp_init(). */
 enum ofp_version
-ofpmp_version(struct list *replies)
+ofpmp_version(struct ovs_list *replies)
 {
     struct ofpbuf *msg = ofpbuf_from_list(list_back(replies));
     const struct ofp_header *oh = ofpbuf_data(msg);
@@ -951,7 +951,7 @@ ofpmp_version(struct list *replies)
 /* Determines the OFPRAW_* type of the OpenFlow messages in 'replies', which
  * should have been initialized by ofpmp_init(). */
 enum ofpraw
-ofpmp_decode_raw(struct list *replies)
+ofpmp_decode_raw(struct ovs_list *replies)
 {
     struct ofpbuf *msg = ofpbuf_from_list(list_back(replies));
     enum ofperr error;
index ad6dc6f..23c334a 100644 (file)
@@ -42,7 +42,7 @@
 #include "ofp-errors.h"
 #include "util.h"
 
-struct list;
+struct ovs_list;
 \f
 /* Raw identifiers for OpenFlow messages.
  *
@@ -661,15 +661,15 @@ bool ofpmsg_is_stat_request(const struct ofp_header *);
  * within 64 kB doesn't need any special treatment, so you might as well use
  * the ofpraw_alloc_*() functions.
  *
- * These functions work with a "struct list" of "struct ofpbuf"s, each of
+ * These functions work with a "struct ovs_list" of "struct ofpbuf"s, each of
  * which represents one part of a multipart message. */
-void ofpmp_init(struct list *, const struct ofp_header *request);
-struct ofpbuf *ofpmp_reserve(struct list *, size_t len);
-void *ofpmp_append(struct list *, size_t len);
-void ofpmp_postappend(struct list *, size_t start_ofs);
+void ofpmp_init(struct ovs_list *, const struct ofp_header *request);
+struct ofpbuf *ofpmp_reserve(struct ovs_list *, size_t len);
+void *ofpmp_append(struct ovs_list *, size_t len);
+void ofpmp_postappend(struct ovs_list *, size_t start_ofs);
 
-enum ofp_version ofpmp_version(struct list *);
-enum ofpraw ofpmp_decode_raw(struct list *);
+enum ofp_version ofpmp_version(struct ovs_list *);
+enum ofpraw ofpmp_decode_raw(struct ovs_list *);
 
 /* Decoding multipart replies. */
 uint16_t ofpmp_flags(const struct ofp_header *);
index 732771e..d15a385 100644 (file)
@@ -2139,7 +2139,7 @@ ofp_print_bucket_id(struct ds *s, const char *label, uint32_t bucket_id,
 
 static void
 ofp_print_group(struct ds *s, uint32_t group_id, uint8_t type,
-                struct list *p_buckets, enum ofp_version ofp_version,
+                struct ovs_list *p_buckets, enum ofp_version ofp_version,
                 bool suppress_type)
 {
     struct ofputil_bucket *bucket;
index 8ba6408..b32234a 100644 (file)
@@ -1969,7 +1969,7 @@ ofputil_put_bands(uint16_t n_bands, const struct ofputil_meter_band *mb,
 
 /* Encode a meter stat for 'mc' and append it to 'replies'. */
 void
-ofputil_append_meter_config(struct list *replies,
+ofputil_append_meter_config(struct ovs_list *replies,
                             const struct ofputil_meter_config *mc)
 {
     struct ofpbuf *msg = ofpbuf_from_list(list_back(replies));
@@ -1987,7 +1987,7 @@ ofputil_append_meter_config(struct list *replies,
 
 /* Encode a meter stat for 'ms' and append it to 'replies'. */
 void
-ofputil_append_meter_stats(struct list *replies,
+ofputil_append_meter_stats(struct ovs_list *replies,
                            const struct ofputil_meter_stats *ms)
 {
     struct ofp13_meter_stats *reply;
@@ -2973,7 +2973,7 @@ unknown_to_zero(uint64_t count)
  * have been initialized with ofpmp_init(). */
 void
 ofputil_append_flow_stats_reply(const struct ofputil_flow_stats *fs,
-                                struct list *replies)
+                                struct ovs_list *replies)
 {
     struct ofpbuf *reply = ofpbuf_from_list(list_back(replies));
     size_t start_ofs = ofpbuf_size(reply);
@@ -4054,7 +4054,7 @@ ofputil_encode_port_desc_stats_request(enum ofp_version ofp_version,
 
 void
 ofputil_append_port_desc_stats_reply(const struct ofputil_phy_port *pp,
-                                     struct list *replies)
+                                     struct ovs_list *replies)
 {
     struct ofpbuf *reply = ofpbuf_from_list(list_back(replies));
     size_t start_ofs = ofpbuf_size(reply);
@@ -4875,7 +4875,7 @@ put_table_instruction_features(
 
 void
 ofputil_append_table_features_reply(const struct ofputil_table_features *tf,
-                                    struct list *replies)
+                                    struct ovs_list *replies)
 {
     struct ofpbuf *reply = ofpbuf_from_list(list_back(replies));
     enum ofp_version version = ofpmp_version(replies);
@@ -5809,7 +5809,7 @@ ofputil_encode_flow_monitor_cancel(uint32_t id)
 }
 
 void
-ofputil_start_flow_update(struct list *replies)
+ofputil_start_flow_update(struct ovs_list *replies)
 {
     struct ofpbuf *msg;
 
@@ -5822,7 +5822,7 @@ ofputil_start_flow_update(struct list *replies)
 
 void
 ofputil_append_flow_update(const struct ofputil_flow_update *update,
-                           struct list *replies)
+                           struct ovs_list *replies)
 {
     enum ofp_version version = ofpmp_version(replies);
     struct nx_flow_update_header *nfuh;
@@ -6540,7 +6540,7 @@ ofputil_port_stats_to_ofp13(const struct ofputil_port_stats *ops,
 
 static void
 ofputil_append_ofp14_port_stats(const struct ofputil_port_stats *ops,
-                                struct list *replies)
+                                struct ovs_list *replies)
 {
     struct ofp14_port_stats_prop_ethernet *eth;
     struct ofp14_port_stats *ps14;
@@ -6575,7 +6575,7 @@ ofputil_append_ofp14_port_stats(const struct ofputil_port_stats *ops,
 
 /* Encode a ports stat for 'ops' and append it to 'replies'. */
 void
-ofputil_append_port_stat(struct list *replies,
+ofputil_append_port_stat(struct ovs_list *replies,
                          const struct ofputil_port_stats *ops)
 {
     switch (ofpmp_version(replies)) {
@@ -6869,7 +6869,7 @@ ofputil_decode_port_stats_request(const struct ofp_header *request,
 
 /* Frees all of the "struct ofputil_bucket"s in the 'buckets' list. */
 void
-ofputil_bucket_list_destroy(struct list *buckets)
+ofputil_bucket_list_destroy(struct ovs_list *buckets)
 {
     struct ofputil_bucket *bucket, *next_bucket;
 
@@ -6899,7 +6899,7 @@ ofputil_bucket_clone_data(const struct ofputil_bucket *bucket)
  * This allows all of 'src' or 'all of 'src' except 'skip' to
  * be cloned and appended to 'dest'. */
 void
-ofputil_bucket_clone_list(struct list *dest, const struct list *src,
+ofputil_bucket_clone_list(struct ovs_list *dest, const struct ovs_list *src,
                           const struct ofputil_bucket *skip)
 {
     struct ofputil_bucket *bucket;
@@ -6919,7 +6919,7 @@ ofputil_bucket_clone_list(struct list *dest, const struct list *src,
 /* Find a bucket in the list 'buckets' whose bucket id is 'bucket_id'
  * Returns the first bucket found or NULL if no buckets are found. */
 struct ofputil_bucket *
-ofputil_bucket_find(const struct list *buckets, uint32_t bucket_id)
+ofputil_bucket_find(const struct ovs_list *buckets, uint32_t bucket_id)
 {
     struct ofputil_bucket *bucket;
 
@@ -6939,7 +6939,7 @@ ofputil_bucket_find(const struct list *buckets, uint32_t bucket_id)
 /* Returns true if more than one bucket in the list 'buckets'
  * have the same bucket id. Returns false otherwise. */
 bool
-ofputil_bucket_check_duplicate_id(const struct list *buckets)
+ofputil_bucket_check_duplicate_id(const struct ovs_list *buckets)
 {
     struct ofputil_bucket *i, *j;
 
@@ -6960,7 +6960,7 @@ ofputil_bucket_check_duplicate_id(const struct list *buckets)
 /* Returns the bucket at the front of the list 'buckets'.
  * Undefined if 'buckets is empty. */
 struct ofputil_bucket *
-ofputil_bucket_list_front(const struct list *buckets)
+ofputil_bucket_list_front(const struct ovs_list *buckets)
 {
     static struct ofputil_bucket *bucket;
 
@@ -6972,7 +6972,7 @@ ofputil_bucket_list_front(const struct list *buckets)
 /* Returns the bucket at the back of the list 'buckets'.
  * Undefined if 'buckets is empty. */
 struct ofputil_bucket *
-ofputil_bucket_list_back(const struct list *buckets)
+ofputil_bucket_list_back(const struct ovs_list *buckets)
 {
     static struct ofputil_bucket *bucket;
 
@@ -7114,7 +7114,7 @@ ofputil_group_stats_to_ofp13(const struct ofputil_group_stats *gs,
  * replies already begun in 'replies' and appends it to the list.  'replies'
  * must have originally been initialized with ofpmp_init(). */
 void
-ofputil_append_group_stats(struct list *replies,
+ofputil_append_group_stats(struct ovs_list *replies,
                            const struct ofputil_group_stats *gs)
 {
     size_t bucket_counter_size;
@@ -7408,8 +7408,8 @@ ofputil_put_ofp15_bucket(const struct ofputil_bucket *bucket,
 
 static void
 ofputil_append_ofp11_group_desc_reply(const struct ofputil_group_desc *gds,
-                                      struct list *buckets,
-                                      struct list *replies,
+                                      struct ovs_list *buckets,
+                                      struct ovs_list *replies,
                                       enum ofp_version version)
 {
     struct ofpbuf *reply = ofpbuf_from_list(list_back(replies));
@@ -7432,8 +7432,8 @@ ofputil_append_ofp11_group_desc_reply(const struct ofputil_group_desc *gds,
 
 static void
 ofputil_append_ofp15_group_desc_reply(const struct ofputil_group_desc *gds,
-                                      struct list *buckets,
-                                      struct list *replies,
+                                      struct ovs_list *buckets,
+                                      struct ovs_list *replies,
                                       enum ofp_version version)
 {
     struct ofpbuf *reply = ofpbuf_from_list(list_back(replies));
@@ -7462,8 +7462,8 @@ ofputil_append_ofp15_group_desc_reply(const struct ofputil_group_desc *gds,
  * initialized with ofpmp_init(). */
 void
 ofputil_append_group_desc_reply(const struct ofputil_group_desc *gds,
-                                struct list *buckets,
-                                struct list *replies)
+                                struct ovs_list *buckets,
+                                struct ovs_list *replies)
 {
     enum ofp_version version = ofpmp_version(replies);
 
@@ -7488,7 +7488,7 @@ ofputil_append_group_desc_reply(const struct ofputil_group_desc *gds,
 
 static enum ofperr
 ofputil_pull_ofp11_buckets(struct ofpbuf *msg, size_t buckets_length,
-                           enum ofp_version version, struct list *buckets)
+                           enum ofp_version version, struct ovs_list *buckets)
 {
     struct ofp11_bucket *ob;
     uint32_t bucket_id = 0;
@@ -7586,7 +7586,7 @@ parse_ofp15_group_bucket_prop_watch(const struct ofpbuf *payload,
 
 static enum ofperr
 ofputil_pull_ofp15_buckets(struct ofpbuf *msg, size_t buckets_length,
-                           enum ofp_version version, struct list *buckets)
+                           enum ofp_version version, struct ovs_list *buckets)
 {
     struct ofp15_bucket *ob;
 
@@ -8415,7 +8415,7 @@ ofputil_queue_stats_to_ofp14(const struct ofputil_queue_stats *oqs,
 
 /* Encode a queue stat for 'oqs' and append it to 'replies'. */
 void
-ofputil_append_queue_stat(struct list *replies,
+ofputil_append_queue_stat(struct ovs_list *replies,
                           const struct ofputil_queue_stats *oqs)
 {
     switch (ofpmp_version(replies)) {
index 6fe2883..d7cf5ca 100644 (file)
@@ -268,7 +268,7 @@ enum ofputil_flow_mod_flags {
  * The handling of cookies across multiple versions of OpenFlow is a bit
  * confusing.  See DESIGN for the details. */
 struct ofputil_flow_mod {
-    struct list list_node;    /* For queuing flow_mods. */
+    struct ovs_list list_node; /* For queuing flow_mods. */
 
     struct match match;
     int priority;
@@ -364,7 +364,7 @@ int ofputil_decode_flow_stats_reply(struct ofputil_flow_stats *,
                                     bool flow_age_extension,
                                     struct ofpbuf *ofpacts);
 void ofputil_append_flow_stats_reply(const struct ofputil_flow_stats *,
-                                     struct list *replies);
+                                     struct ovs_list *replies);
 
 /* Aggregate stats reply, independent of protocol. */
 struct ofputil_aggregate_stats {
@@ -684,7 +684,7 @@ int ofputil_decode_table_features(struct ofpbuf *,
 struct ofpbuf *ofputil_encode_table_features_request(enum ofp_version);
 
 void ofputil_append_table_features_reply(
-    const struct ofputil_table_features *tf, struct list *replies);
+    const struct ofputil_table_features *tf, struct ovs_list *replies);
 
 /* Meter band configuration for all supported band types. */
 struct ofputil_meter_band {
@@ -746,10 +746,10 @@ struct ofpbuf *ofputil_encode_meter_features_reply(const struct
 void ofputil_decode_meter_request(const struct ofp_header *,
                                   uint32_t *meter_id);
 
-void ofputil_append_meter_config(struct list *replies,
+void ofputil_append_meter_config(struct ovs_list *replies,
                                  const struct ofputil_meter_config *);
 
-void ofputil_append_meter_stats(struct list *replies,
+void ofputil_append_meter_stats(struct ovs_list *replies,
                                 const struct ofputil_meter_stats *);
 
 enum ofputil_meter_request_type {
@@ -883,9 +883,9 @@ struct ofputil_flow_update {
 
 int ofputil_decode_flow_update(struct ofputil_flow_update *,
                                struct ofpbuf *msg, struct ofpbuf *ofpacts);
-void ofputil_start_flow_update(struct list *replies);
+void ofputil_start_flow_update(struct ovs_list *replies);
 void ofputil_append_flow_update(const struct ofputil_flow_update *,
-                                struct list *replies);
+                                struct ovs_list *replies);
 
 /* Abstract nx_flow_monitor_cancel. */
 uint32_t ofputil_decode_flow_monitor_cancel(const struct ofp_header *);
@@ -898,7 +898,7 @@ struct ofpbuf *ofputil_encode_port_desc_stats_request(
     enum ofp_version ofp_version, ofp_port_t);
 
 void ofputil_append_port_desc_stats_reply(const struct ofputil_phy_port *pp,
-                                          struct list *replies);
+                                          struct ovs_list *replies);
 
 /* Encoding simple OpenFlow messages. */
 struct ofpbuf *make_echo_request(enum ofp_version);
@@ -933,7 +933,7 @@ struct ofputil_port_stats {
 
 struct ofpbuf *ofputil_encode_dump_ports_request(enum ofp_version ofp_version,
                                                  ofp_port_t port);
-void ofputil_append_port_stat(struct list *replies,
+void ofputil_append_port_stat(struct ovs_list *replies,
                               const struct ofputil_port_stats *ops);
 size_t ofputil_count_port_stats(const struct ofp_header *);
 int ofputil_decode_port_stats(struct ofputil_port_stats *, struct ofpbuf *msg);
@@ -968,7 +968,7 @@ struct ofputil_queue_stats {
 
 size_t ofputil_count_queue_stats(const struct ofp_header *);
 int ofputil_decode_queue_stats(struct ofputil_queue_stats *qs, struct ofpbuf *msg);
-void ofputil_append_queue_stat(struct list *replies,
+void ofputil_append_queue_stat(struct ovs_list *replies,
                                const struct ofputil_queue_stats *oqs);
 
 struct bucket_counter {
@@ -978,7 +978,7 @@ struct bucket_counter {
 
 /* Bucket for use in groups. */
 struct ofputil_bucket {
-    struct list list_node;
+    struct ovs_list list_node;
     uint16_t weight;            /* Relative weight, for "select" groups. */
     ofp_port_t watch_port;      /* Port whose state affects whether this bucket
                                  * is live. Only required for fast failover
@@ -1002,7 +1002,7 @@ struct ofputil_group_mod {
                                    * OFPGC15_INSERT_BUCKET and
                                    * OFPGC15_REMOVE_BUCKET commands
                                    * execution.*/
-    struct list buckets;          /* Contains "struct ofputil_bucket"s. */
+    struct ovs_list buckets;      /* Contains "struct ofputil_bucket"s. */
 };
 
 /* Group stats reply, independent of protocol. */
@@ -1031,17 +1031,18 @@ struct ofputil_group_features {
 struct ofputil_group_desc {
     uint8_t type;               /* One of OFPGT_*. */
     uint32_t group_id;          /* Group identifier. */
-    struct list buckets;        /* Contains "struct ofputil_bucket"s. */
+    struct ovs_list buckets;    /* Contains "struct ofputil_bucket"s. */
 };
 
-void ofputil_bucket_list_destroy(struct list *buckets);
-void ofputil_bucket_clone_list(struct list *dest, const struct list *src,
+void ofputil_bucket_list_destroy(struct ovs_list *buckets);
+void ofputil_bucket_clone_list(struct ovs_list *dest,
+                               const struct ovs_list *src,
                                const struct ofputil_bucket *);
-struct ofputil_bucket *ofputil_bucket_find(const struct list *,
+struct ofputil_bucket *ofputil_bucket_find(const struct ovs_list *,
                                            uint32_t bucket_id);
-bool ofputil_bucket_check_duplicate_id(const struct list *);
-struct ofputil_bucket *ofputil_bucket_list_front(const struct list *);
-struct ofputil_bucket *ofputil_bucket_list_back(const struct list *);
+bool ofputil_bucket_check_duplicate_id(const struct ovs_list *);
+struct ofputil_bucket *ofputil_bucket_list_front(const struct ovs_list *);
+struct ofputil_bucket *ofputil_bucket_list_back(const struct ovs_list *);
 
 static inline bool
 ofputil_bucket_has_liveness(const struct ofputil_bucket *bucket)
@@ -1054,7 +1055,7 @@ struct ofpbuf *ofputil_encode_group_stats_request(enum ofp_version,
                                                   uint32_t group_id);
 enum ofperr ofputil_decode_group_stats_request(
     const struct ofp_header *request, uint32_t *group_id);
-void ofputil_append_group_stats(struct list *replies,
+void ofputil_append_group_stats(struct ovs_list *replies,
                                 const struct ofputil_group_stats *);
 struct ofpbuf *ofputil_encode_group_features_request(enum ofp_version);
 struct ofpbuf *ofputil_encode_group_features_reply(
@@ -1078,8 +1079,8 @@ int ofputil_decode_group_desc_reply(struct ofputil_group_desc *,
                                     struct ofpbuf *, enum ofp_version);
 
 void ofputil_append_group_desc_reply(const struct ofputil_group_desc *,
-                                     struct list *buckets,
-                                     struct list *replies);
+                                     struct ovs_list *buckets,
+                                     struct ovs_list *replies);
 
 struct ofputil_bundle_ctrl_msg {
     uint32_t    bundle_id;
index 1d3cd03..4946e6f 100644 (file)
@@ -517,7 +517,7 @@ ofpbuf_to_string(const struct ofpbuf *b, size_t maxbytes)
 /* Removes each of the "struct ofpbuf"s on 'list' from the list and frees
  * them.  */
 void
-ofpbuf_list_delete(struct list *list)
+ofpbuf_list_delete(struct ovs_list *list)
 {
     struct ofpbuf *b, *next;
 
index ea03c9d..4c0f7ea 100644 (file)
@@ -76,7 +76,7 @@ struct ofpbuf {
                                    or UINT16_MAX. */
     uint16_t l4_ofs;            /* Transport-level header offset from 'frame',
                                    or UINT16_MAX. */
-    struct list list_node;      /* Private list element for use by owner. */
+    struct ovs_list list_node;  /* Private list element for use by owner. */
 };
 
 static inline void * ofpbuf_data(const struct ofpbuf *);
@@ -160,8 +160,8 @@ static inline void *ofpbuf_try_pull(struct ofpbuf *, size_t);
 void *ofpbuf_steal_data(struct ofpbuf *);
 
 char *ofpbuf_to_string(const struct ofpbuf *, size_t maxbytes);
-static inline struct ofpbuf *ofpbuf_from_list(const struct list *);
-void ofpbuf_list_delete(struct list *);
+static inline struct ofpbuf *ofpbuf_from_list(const struct ovs_list *);
+void ofpbuf_list_delete(struct ovs_list *);
 static inline bool ofpbuf_equal(const struct ofpbuf *, const struct ofpbuf *);
 
 \f
@@ -263,7 +263,7 @@ static inline void *ofpbuf_try_pull(struct ofpbuf *b, size_t size)
         ? ofpbuf_pull(b, size) : NULL;
 }
 
-static inline struct ofpbuf *ofpbuf_from_list(const struct list *list)
+static inline struct ofpbuf *ofpbuf_from_list(const struct ovs_list *list)
 {
     return CONTAINER_OF(list, struct ofpbuf, list_node);
 }
index 26ab3cf..07cbc7b 100644 (file)
@@ -59,14 +59,14 @@ VLOG_DEFINE_THIS_MODULE(ovs_numa);
 /* numa node. */
 struct numa_node {
     struct hmap_node hmap_node;     /* In the 'all_numa_nodes'. */
-    struct list cores;              /* List of cpu cores on the numa node. */
+    struct ovs_list cores;          /* List of cpu cores on the numa node. */
     int numa_id;                    /* numa node id. */
 };
 
 /* Cpu core on a numa node. */
 struct cpu_core {
     struct hmap_node hmap_node;/* In the 'all_cpu_cores'. */
-    struct list list_node;     /* In 'numa_node->cores' list. */
+    struct ovs_list list_node; /* In 'numa_node->cores' list. */
     struct numa_node *numa;    /* numa node containing the core. */
     int core_id;               /* Core id. */
     bool available;            /* If the core can be pinned. */
index 11c67c9..1cf69ae 100644 (file)
@@ -32,13 +32,13 @@ struct ovsrcu_cb {
 };
 
 struct ovsrcu_cbset {
-    struct list list_node;
+    struct ovs_list list_node;
     struct ovsrcu_cb cbs[16];
     int n_cbs;
 };
 
 struct ovsrcu_perthread {
-    struct list list_node;      /* In global list. */
+    struct ovs_list list_node;  /* In global list. */
 
     struct ovs_mutex mutex;
     uint64_t seqno;
@@ -49,7 +49,7 @@ struct ovsrcu_perthread {
 static struct seq *global_seqno;
 
 static pthread_key_t perthread_key;
-static struct list ovsrcu_threads;
+static struct ovs_list ovsrcu_threads;
 static struct ovs_mutex ovsrcu_threads_mutex;
 
 static struct guarded_list flushed_cbsets;
@@ -240,7 +240,7 @@ static bool
 ovsrcu_call_postponed(void)
 {
     struct ovsrcu_cbset *cbset, *next_cbset;
-    struct list cbsets;
+    struct ovs_list cbsets;
 
     guarded_list_pop_all(&flushed_cbsets, &cbsets);
     if (list_is_empty(&cbsets)) {
index e2c3971..1f346b9 100644 (file)
@@ -591,7 +591,7 @@ count_cpu_cores(void)
 
 /* A piece of thread-specific data. */
 struct ovsthread_key {
-    struct list list_node;      /* In 'inuse_keys' or 'free_keys'. */
+    struct ovs_list list_node;  /* In 'inuse_keys' or 'free_keys'. */
     void (*destructor)(void *); /* Called at thread exit. */
 
     /* Indexes into the per-thread array in struct ovsthread_key_slots.
@@ -601,7 +601,7 @@ struct ovsthread_key {
 
 /* Per-thread data structure. */
 struct ovsthread_key_slots {
-    struct list list_node;      /* In 'slots_list'. */
+    struct ovs_list list_node;  /* In 'slots_list'. */
     void **p1[L1_SIZE];
 };
 
@@ -620,14 +620,14 @@ static struct ovs_mutex key_mutex = OVS_MUTEX_INITIALIZER;
  *
  * Together, 'inuse_keys' and 'free_keys' hold an ovsthread_key for every index
  * from 0 to n_keys - 1, inclusive. */
-static struct list inuse_keys OVS_GUARDED_BY(key_mutex)
+static struct ovs_list inuse_keys OVS_GUARDED_BY(key_mutex)
     = LIST_INITIALIZER(&inuse_keys);
-static struct list free_keys OVS_GUARDED_BY(key_mutex)
+static struct ovs_list free_keys OVS_GUARDED_BY(key_mutex)
     = LIST_INITIALIZER(&free_keys);
 static unsigned int n_keys OVS_GUARDED_BY(key_mutex);
 
 /* All existing struct ovsthread_key_slots. */
-static struct list slots_list OVS_GUARDED_BY(key_mutex)
+static struct ovs_list slots_list OVS_GUARDED_BY(key_mutex)
     = LIST_INITIALIZER(&slots_list);
 
 static void *
index 7ea5ce6..2ed78a7 100644 (file)
@@ -26,8 +26,8 @@
 struct ovsdb_idl_row {
     struct hmap_node hmap_node; /* In struct ovsdb_idl_table's 'rows'. */
     struct uuid uuid;           /* Row "_uuid" field. */
-    struct list src_arcs;       /* Forward arcs (ovsdb_idl_arc.src_node). */
-    struct list dst_arcs;       /* Backward arcs (ovsdb_idl_arc.dst_node). */
+    struct ovs_list src_arcs;   /* Forward arcs (ovsdb_idl_arc.src_node). */
+    struct ovs_list dst_arcs;   /* Backward arcs (ovsdb_idl_arc.dst_node). */
     struct ovsdb_idl_table *table; /* Containing table. */
     struct ovsdb_datum *old;    /* Committed data (null if orphaned). */
 
index 4f6a2ed..e1857b6 100644 (file)
@@ -65,8 +65,8 @@ COVERAGE_DEFINE(txn_error);
  * tables.
  */
 struct ovsdb_idl_arc {
-    struct list src_node;       /* In src->src_arcs list. */
-    struct list dst_node;       /* In dst->dst_arcs list. */
+    struct ovs_list src_node;   /* In src->src_arcs list. */
+    struct ovs_list dst_node;   /* In dst->dst_arcs list. */
     struct ovsdb_idl_row *src;  /* Source row. */
     struct ovsdb_idl_row *dst;  /* Destination row. */
 };
index 7946d80..93a99ab 100644 (file)
@@ -41,7 +41,7 @@ VLOG_DEFINE_THIS_MODULE(process);
 COVERAGE_DEFINE(process_start);
 
 struct process {
-    struct list node;
+    struct ovs_list node;
     char *name;
     pid_t pid;
 
@@ -54,7 +54,7 @@ struct process {
 static int fds[2];
 
 /* All processes. */
-static struct list all_processes = LIST_INITIALIZER(&all_processes);
+static struct ovs_list all_processes = LIST_INITIALIZER(&all_processes);
 
 static void sigchld_handler(int signr OVS_UNUSED);
 
index 5c28806..9d8c46f 100644 (file)
@@ -95,7 +95,7 @@ struct rconn {
     char *target;               /* vconn name, passed to vconn_open(). */
     bool reliable;
 
-    struct list txq;            /* Contains "struct ofpbuf"s. */
+    struct ovs_list txq;        /* Contains "struct ofpbuf"s. */
 
     int backoff;
     int max_backoff;
index f597d84..3a57956 100644 (file)
@@ -26,7 +26,8 @@
  * To be RCU-friendly, the struct rculist instances must be freed via
  * ovsrcu_postpone().
  *
- * The API is almost the same as for struct list, with the following exeptions:
+ * The API is almost the same as for struct ovs_list, with the following
+ * exeptions:
  *
  * - The 'prev' pointer may not be accessed by the user.
  * - The 'next' pointer should be accessed via rculist_next() by readers, and
@@ -42,7 +43,7 @@
  *   write operation to the list element, hopefully crashing the program if
  *   the list node was freed or re-used too early.
  *
- * The following functions are variations of the struct list functions with
+ * The following functions are variations of the struct ovs_list functions with
  * similar names, but are now restricted to the writer use:
  *
  * - rculist_back_protected()
@@ -57,7 +58,7 @@
 
 /* A non-existing mutex to make it more difficult for an user to accidentally
  * keep using the 'prev' pointer.  This may be helpful when porting code from
- * struct list to rculist. */
+ * struct ovs_list to rculist. */
 extern struct ovs_mutex rculist_fake_mutex;
 
 /* Doubly linked list head or element. */
index 271db2a..452417e 100644 (file)
@@ -705,7 +705,7 @@ struct rstp_port {
 };
 
 struct rstp {
-    struct list node OVS_GUARDED_BY(rstp_mutex);   /* In rstp instances list */
+    struct ovs_list node OVS_GUARDED_BY(rstp_mutex);   /* In rstp instances list */
     char *name;     /* Bridge name. */
 
     /* Changes in last SM execution. */
index 9573fe4..022fc3c 100644 (file)
@@ -50,8 +50,8 @@ VLOG_DEFINE_THIS_MODULE(rstp);
 
 struct ovs_mutex rstp_mutex = OVS_MUTEX_INITIALIZER;
 
-static struct list all_rstps__ = LIST_INITIALIZER(&all_rstps__);
-static struct list *const all_rstps OVS_GUARDED_BY(rstp_mutex) = &all_rstps__;
+static struct ovs_list all_rstps__ = LIST_INITIALIZER(&all_rstps__);
+static struct ovs_list *const all_rstps OVS_GUARDED_BY(rstp_mutex) = &all_rstps__;
 
 /* Internal use only. */
 static void rstp_set_bridge_address__(struct rstp *, rstp_identifier)
index ffffbb7..46a0632 100644 (file)
@@ -38,7 +38,7 @@ static struct ovs_mutex rtbsd_mutex = OVS_MUTEX_INITIALIZER;
 static int notify_sock = -1;
 
 /* All registered notifiers. */
-static struct list all_notifiers = LIST_INITIALIZER(&all_notifiers);
+static struct ovs_list all_notifiers = LIST_INITIALIZER(&all_notifiers);
 
 static void rtbsd_report_change(const struct if_msghdr *)
     OVS_REQUIRES(rtbsd_mutex);
index 60bfae9..5dfbaff 100644 (file)
@@ -44,7 +44,7 @@ struct rtbsd_change {
 typedef void rtbsd_notify_func(const struct rtbsd_change *, void *aux);
 
 struct rtbsd_notifier {
-    struct list node;
+    struct ovs_list node;
     rtbsd_notify_func *cb;
     void *aux;
 };
index 452d683..271e617 100644 (file)
--- a/lib/seq.c
+++ b/lib/seq.c
@@ -39,15 +39,15 @@ struct seq_waiter {
     struct hmap_node hmap_node OVS_GUARDED; /* In 'seq->waiters'. */
     unsigned int ovsthread_id OVS_GUARDED;  /* Key in 'waiters' hmap. */
 
-    struct seq_thread *thread OVS_GUARDED; /* Thread preparing to wait. */
-    struct list list_node OVS_GUARDED;     /* In 'thread->waiters'. */
+    struct seq_thread *thread OVS_GUARDED;  /* Thread preparing to wait. */
+    struct ovs_list list_node OVS_GUARDED;  /* In 'thread->waiters'. */
 
     uint64_t value OVS_GUARDED; /* seq->value we're waiting to change. */
 };
 
 /* A thread that might be waiting on one or more seqs. */
 struct seq_thread {
-    struct list waiters OVS_GUARDED; /* Contains 'struct seq_waiter's. */
+    struct ovs_list waiters OVS_GUARDED; /* Contains 'struct seq_waiter's. */
     struct latch latch OVS_GUARDED;  /* Wakeup latch for this thread. */
     bool waiting OVS_GUARDED;        /* True if latch_wait() already called. */
 };
index 84ae1ab..b0ec6bf 100644 (file)
--- a/lib/seq.h
+++ b/lib/seq.h
@@ -76,7 +76,7 @@
  * e.g.:
  *
  *    struct ovs_mutex mutex;
- *    struct list queue OVS_GUARDED_BY(mutex);
+ *    struct ovs_list queue OVS_GUARDED_BY(mutex);
  *    struct seq nonempty_seq;
  *
  * To add an element to the queue:
index 9055922..5854afa 100644 (file)
--- a/lib/stp.c
+++ b/lib/stp.c
@@ -109,7 +109,7 @@ struct stp_port {
 };
 
 struct stp {
-    struct list node;               /* Node in all_stps list. */
+    struct ovs_list node;           /* Node in all_stps list. */
 
     /* Static bridge data. */
     char *name;                     /* Human-readable name for log messages. */
@@ -150,8 +150,8 @@ struct stp {
 };
 
 static struct ovs_mutex mutex;
-static struct list all_stps__ = LIST_INITIALIZER(&all_stps__);
-static struct list *const all_stps OVS_GUARDED_BY(mutex) = &all_stps__;
+static struct ovs_list all_stps__ = LIST_INITIALIZER(&all_stps__);
+static struct ovs_list *const all_stps OVS_GUARDED_BY(mutex) = &all_stps__;
 
 #define FOR_EACH_ENABLED_PORT(PORT, STP)                        \
     for ((PORT) = stp_next_enabled_port((STP), (STP)->ports);   \
index 5749293..9fb2e85 100644 (file)
@@ -44,7 +44,7 @@ struct unixctl_command {
 };
 
 struct unixctl_conn {
-    struct list node;
+    struct ovs_list node;
     struct jsonrpc *rpc;
 
     /* Only one request can be in progress at a time.  While the request is
@@ -55,7 +55,7 @@ struct unixctl_conn {
 /* Server for control connection. */
 struct unixctl_server {
     struct pstream *listener;
-    struct list conns;
+    struct ovs_list conns;
 };
 
 static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(5, 5);
index c24e87d..97e8dd2 100644 (file)
@@ -878,7 +878,7 @@ vconn_transact_noreply(struct vconn *vconn, struct ofpbuf *request,
  * All of the requests on 'requests' are always destroyed, regardless of the
  * return value. */
 int
-vconn_transact_multiple_noreply(struct vconn *vconn, struct list *requests,
+vconn_transact_multiple_noreply(struct vconn *vconn, struct ovs_list *requests,
                                 struct ofpbuf **replyp)
 {
     struct ofpbuf *request, *next;
index f6ba955..258568c 100644 (file)
@@ -25,7 +25,7 @@
 extern "C" {
 #endif
 
-struct list;
+struct ovs_list;
 struct ofpbuf;
 struct pvconn;
 struct vconn;
@@ -51,7 +51,7 @@ int vconn_send(struct vconn *, struct ofpbuf *);
 int vconn_recv_xid(struct vconn *, ovs_be32 xid, struct ofpbuf **);
 int vconn_transact(struct vconn *, struct ofpbuf *, struct ofpbuf **);
 int vconn_transact_noreply(struct vconn *, struct ofpbuf *, struct ofpbuf **);
-int vconn_transact_multiple_noreply(struct vconn *, struct list *requests,
+int vconn_transact_multiple_noreply(struct vconn *, struct ovs_list *requests,
                                     struct ofpbuf **replyp);
 
 void vconn_run(struct vconn *);
index a2255eb..639dc91 100644 (file)
@@ -75,7 +75,7 @@ VLOG_LEVELS
 BUILD_ASSERT_DECL(LOG_LOCAL0 == (16 << 3));
 
 /* The log modules. */
-struct list vlog_modules = LIST_INITIALIZER(&vlog_modules);
+struct ovs_list vlog_modules = LIST_INITIALIZER(&vlog_modules);
 
 /* Protects the 'pattern' in all "struct facility"s, so that a race between
  * changing and reading the pattern does not cause an access to freed
index 8190a44..41b0adc 100644 (file)
@@ -79,7 +79,7 @@ enum vlog_facility vlog_get_facility_val(const char *name);
 
 /* A log module. */
 struct vlog_module {
-    struct list list;
+    struct ovs_list list;
     const char *name;             /* User-visible name. */
     int levels[VLF_N_FACILITIES]; /* Minimum log level for each facility. */
     int min_level;                /* Minimum log level for any facility. */
@@ -87,7 +87,7 @@ struct vlog_module {
 };
 
 /* Global list of all logging modules */
-extern struct list vlog_modules;
+extern struct ovs_list vlog_modules;
 
 /* Creates and initializes a global instance of a module named MODULE. */
 #define VLOG_DEFINE_MODULE(MODULE)                                      \
index 372f481..72611ae 100644 (file)
@@ -63,7 +63,7 @@ struct bond_entry {
     struct bond_slave *slave;   /* Assigned slave, NULL if unassigned. */
     uint64_t tx_bytes           /* Count of bytes recently transmitted. */
         OVS_GUARDED_BY(rwlock);
-    struct list list_node;      /* In bond_slave's 'entries' list. */
+    struct ovs_list list_node;  /* In bond_slave's 'entries' list. */
 
     /* Recirculation.
      *
@@ -77,7 +77,7 @@ struct bond_entry {
 /* A bond slave, that is, one of the links comprising a bond. */
 struct bond_slave {
     struct hmap_node hmap_node; /* In struct bond's slaves hmap. */
-    struct list list_node;      /* In struct bond's enabled_slaves list. */
+    struct ovs_list list_node;  /* In struct bond's enabled_slaves list. */
     struct bond *bond;          /* The bond that contains this slave. */
     void *aux;                  /* Client-provided handle for this slave. */
 
@@ -92,8 +92,8 @@ struct bond_slave {
     bool may_enable;            /* Client considers this slave bondable. */
 
     /* Rebalancing info.  Used only by bond_rebalance(). */
-    struct list bal_node;       /* In bond_rebalance()'s 'bals' list. */
-    struct list entries;        /* 'struct bond_entry's assigned here. */
+    struct ovs_list bal_node;   /* In bond_rebalance()'s 'bals' list. */
+    struct ovs_list entries;    /* 'struct bond_entry's assigned here. */
     uint64_t tx_bytes;          /* Sum across 'tx_bytes' of entries. */
 };
 
@@ -113,7 +113,7 @@ struct bond {
      * (To prevent the bond_slave from disappearing they must also hold
      * 'rwlock'.) */
     struct ovs_mutex mutex OVS_ACQ_AFTER(rwlock);
-    struct list enabled_slaves OVS_GUARDED; /* Contains struct bond_slaves. */
+    struct ovs_list enabled_slaves OVS_GUARDED; /* Contains struct bond_slaves. */
 
     /* Bonding info. */
     enum bond_mode balance;     /* Balancing mode, one of BM_*. */
@@ -968,13 +968,13 @@ bond_account(struct bond *bond, const struct flow *flow, uint16_t vlan,
 }
 
 static struct bond_slave *
-bond_slave_from_bal_node(struct list *bal) OVS_REQ_RDLOCK(rwlock)
+bond_slave_from_bal_node(struct ovs_list *bal) OVS_REQ_RDLOCK(rwlock)
 {
     return CONTAINER_OF(bal, struct bond_slave, bal_node);
 }
 
 static void
-log_bals(struct bond *bond, const struct list *bals)
+log_bals(struct bond *bond, const struct ovs_list *bals)
     OVS_REQ_RDLOCK(rwlock)
 {
     if (VLOG_IS_DBG_ENABLED()) {
@@ -1083,7 +1083,7 @@ choose_entry_to_migrate(const struct bond_slave *from, uint64_t to_tx_bytes)
 /* Inserts 'slave' into 'bals' so that descending order of 'tx_bytes' is
  * maintained. */
 static void
-insert_bal(struct list *bals, struct bond_slave *slave)
+insert_bal(struct ovs_list *bals, struct bond_slave *slave)
 {
     struct bond_slave *pos;
 
@@ -1098,7 +1098,7 @@ insert_bal(struct list *bals, struct bond_slave *slave)
 /* Removes 'slave' from its current list and then inserts it into 'bals' so
  * that descending order of 'tx_bytes' is maintained. */
 static void
-reinsert_bal(struct list *bals, struct bond_slave *slave)
+reinsert_bal(struct ovs_list *bals, struct bond_slave *slave)
 {
     list_remove(&slave->bal_node);
     insert_bal(bals, slave);
@@ -1115,7 +1115,7 @@ bond_rebalance(struct bond *bond)
 {
     struct bond_slave *slave;
     struct bond_entry *e;
-    struct list bals;
+    struct ovs_list bals;
     bool rebalanced = false;
     bool use_recirc;
 
@@ -1733,7 +1733,7 @@ lookup_bond_entry(const struct bond *bond, const struct flow *flow,
 static struct bond_slave *
 get_enabled_slave(struct bond *bond)
 {
-    struct list *node;
+    struct ovs_list *node;
 
     ovs_mutex_lock(&bond->mutex);
     if (list_is_empty(&bond->enabled_slaves)) {
index ddc74c6..001ad14 100644 (file)
@@ -53,12 +53,12 @@ struct ofp_bundle {
     enum bundle_state state;
 
     /* List of 'struct bundle_message's */
-    struct list       msg_list;
+    struct ovs_list    msg_list;
 };
 
 struct bundle_message {
     struct ofp_header *msg;
-    struct list       node;  /* Element in 'struct ofp_bundles's msg_list */
+    struct ovs_list   node;  /* Element in 'struct ofp_bundles's msg_list */
 };
 
 static uint32_t
index 75f4198..cf79fd2 100644 (file)
@@ -60,7 +60,7 @@ static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5);
 struct ofconn {
 /* Configuration that persists from one connection to the next. */
 
-    struct list node;           /* In struct connmgr's "all_conns" list. */
+    struct ovs_list node;       /* In struct connmgr's "all_conns" list. */
     struct hmap_node hmap_node; /* In struct connmgr's "controllers" map. */
 
     struct connmgr *connmgr;    /* Connection's manager. */
@@ -131,7 +131,7 @@ struct ofconn {
      *
      * When 'updates' is nonempty, 'sent_abbrev_update' is true if 'updates'
      * contains an update event of type NXFME_ABBREV and false otherwise.. */
-    struct list updates OVS_GUARDED_BY(ofproto_mutex);
+    struct ovs_list updates OVS_GUARDED_BY(ofproto_mutex);
     bool sent_abbrev_update OVS_GUARDED_BY(ofproto_mutex);
 
     /* Active bundles. Contains "struct ofp_bundle"s. */
@@ -162,7 +162,7 @@ static void ofconn_set_rate_limit(struct ofconn *, int rate, int burst);
 static void ofconn_send(const struct ofconn *, struct ofpbuf *,
                         struct rconn_packet_counter *);
 
-static void do_send_packet_ins(struct ofconn *, struct list *txq);
+static void do_send_packet_ins(struct ofconn *, struct ovs_list *txq);
 
 /* A listener for incoming OpenFlow "service" connections. */
 struct ofservice {
@@ -195,8 +195,8 @@ struct connmgr {
     char *local_port_name;
 
     /* OpenFlow connections. */
-    struct hmap controllers;   /* All OFCONN_PRIMARY controllers. */
-    struct list all_conns;     /* All controllers. */
+    struct hmap controllers;     /* All OFCONN_PRIMARY controllers. */
+    struct ovs_list all_conns;   /* All controllers. */
     uint64_t master_election_id; /* monotonically increasing sequence number
                                   * for master election */
     bool master_election_id_defined;
@@ -1088,7 +1088,7 @@ ofconn_send_reply(const struct ofconn *ofconn, struct ofpbuf *msg)
 /* Sends each of the messages in list 'replies' on 'ofconn' in order,
  * accounting them as replies. */
 void
-ofconn_send_replies(const struct ofconn *ofconn, struct list *replies)
+ofconn_send_replies(const struct ofconn *ofconn, struct ovs_list *replies)
 {
     struct ofpbuf *reply, *next;
 
@@ -1351,7 +1351,7 @@ ofconn_run(struct ofconn *ofconn,
     size_t i;
 
     for (i = 0; i < N_SCHEDULERS; i++) {
-        struct list txq;
+        struct ovs_list txq;
 
         pinsched_run(ofconn->schedulers[i], &txq);
         do_send_packet_ins(ofconn, &txq);
@@ -1717,7 +1717,7 @@ connmgr_send_packet_in(struct connmgr *mgr,
 }
 
 static void
-do_send_packet_ins(struct ofconn *ofconn, struct list *txq)
+do_send_packet_ins(struct ofconn *ofconn, struct ovs_list *txq)
 {
     struct ofpbuf *pin, *next_pin;
 
@@ -1742,7 +1742,7 @@ schedule_packet_in(struct ofconn *ofconn, struct ofproto_packet_in pin,
 {
     struct connmgr *mgr = ofconn->connmgr;
     uint16_t controller_max_len;
-    struct list txq;
+    struct ovs_list txq;
 
     pin.up.total_len = pin.up.packet_len;
 
@@ -2261,7 +2261,7 @@ ofmonitor_resume(struct ofconn *ofconn)
     struct rule_collection rules;
     struct ofpbuf *resumed;
     struct ofmonitor *m;
-    struct list msgs;
+    struct ovs_list msgs;
 
     rule_collection_init(&rules);
     HMAP_FOR_EACH (m, ofconn_node, &ofconn->monitors) {
index 75a1ffe..c0f7c35 100644 (file)
@@ -84,7 +84,7 @@ enum ofproto_packet_in_miss_type {
 /* A packet_in, with extra members to assist in queuing and routing it. */
 struct ofproto_packet_in {
     struct ofputil_packet_in up;
-    struct list list_node;      /* For queuing. */
+    struct ovs_list list_node;  /* For queuing. */
     uint16_t controller_id;     /* Controller ID to send to. */
     int send_len;               /* Length that the action requested sending. */
     enum ofproto_packet_in_miss_type miss_type;
@@ -149,7 +149,7 @@ void ofconn_get_async_config(struct ofconn *,
                              uint32_t *slave_masks);
 
 void ofconn_send_reply(const struct ofconn *, struct ofpbuf *);
-void ofconn_send_replies(const struct ofconn *, struct list *);
+void ofconn_send_replies(const struct ofconn *, struct ovs_list *);
 void ofconn_send_error(const struct ofconn *, const struct ofp_header *request,
                        enum ofperr);
 
@@ -230,7 +230,7 @@ void ofmonitor_collect_resume_rules(struct ofmonitor *, uint64_t seqno,
                                     struct rule_collection *)
     OVS_REQUIRES(ofproto_mutex);
 void ofmonitor_compose_refresh_updates(struct rule_collection *rules,
-                                       struct list *msgs)
+                                       struct ovs_list *msgs)
     OVS_REQUIRES(ofproto_mutex);
 
 #endif /* connmgr.h */
index 9dff0ef..33e9f3f 100644 (file)
@@ -81,7 +81,7 @@ struct dpif_ipfix_exporter {
     uint32_t seq_number;
     time_t last_template_set_time;
     struct hmap cache_flow_key_map;  /* ipfix_flow_cache_entry. */
-    struct list cache_flow_start_timestamp_list;  /* ipfix_flow_cache_entry. */
+    struct ovs_list cache_flow_start_timestamp_list;  /* ipfix_flow_cache_entry. */
     uint32_t cache_active_timeout;  /* In seconds. */
     uint32_t cache_max_flows;
 };
@@ -395,7 +395,7 @@ struct ipfix_flow_key {
 /* Flow cache entry. */
 struct ipfix_flow_cache_entry {
     struct hmap_node flow_key_map_node;
-    struct list cache_flow_start_timestamp_list_node;
+    struct ovs_list cache_flow_start_timestamp_list_node;
     struct ipfix_flow_key flow_key;
     /* Common aggregated elements. */
     uint64_t flow_start_timestamp_usec;
index 764c7b1..94c6711 100644 (file)
@@ -57,7 +57,7 @@ struct mport {
  * 'ofport_dpif'.  Note, the pointed object is not protected, so
  * users should always use the mport_find() to convert it to 'mport'. */
 struct send_soon_entry {
-    struct list list_node;            /* In send_soon. */
+    struct ovs_list list_node;        /* In send_soon. */
     const struct ofport_dpif *ofport;
 };
 
index 5fe90ac..dc6c344 100644 (file)
@@ -94,7 +94,7 @@ struct revalidator {
  *      them.
  */
 struct udpif {
-    struct list list_node;             /* In all_udpifs list. */
+    struct ovs_list list_node;         /* In all_udpifs list. */
 
     struct dpif *dpif;                 /* Datapath handle. */
     struct dpif_backer *backer;        /* Opaque dpif_backer pointer. */
@@ -237,7 +237,7 @@ struct ukey_op {
 };
 
 static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5);
-static struct list all_udpifs = LIST_INITIALIZER(&all_udpifs);
+static struct ovs_list all_udpifs = LIST_INITIALIZER(&all_udpifs);
 
 static size_t recv_upcalls(struct handler *);
 static int process_upcall(struct udpif *, struct upcall *,
index 5a2b883..b357cfa 100644 (file)
@@ -82,7 +82,7 @@ struct xbridge {
     struct hmap_node hmap_node;   /* Node in global 'xbridges' map. */
     struct ofproto_dpif *ofproto; /* Key in global 'xbridges' map. */
 
-    struct list xbundles;         /* Owned xbundles. */
+    struct ovs_list xbundles;     /* Owned xbundles. */
     struct hmap xports;           /* Indexed by ofp_port. */
 
     char *name;                   /* Name used in log messages. */
@@ -120,10 +120,10 @@ struct xbundle {
     struct hmap_node hmap_node;    /* In global 'xbundles' map. */
     struct ofbundle *ofbundle;     /* Key in global 'xbundles' map. */
 
-    struct list list_node;         /* In parent 'xbridges' list. */
+    struct ovs_list list_node;     /* In parent 'xbridges' list. */
     struct xbridge *xbridge;       /* Parent xbridge. */
 
-    struct list xports;            /* Contains "struct xport"s. */
+    struct ovs_list xports;        /* Contains "struct xport"s. */
 
     char *name;                    /* Name used in log messages. */
     struct bond *bond;             /* Nonnull iff more than one port. */
@@ -146,7 +146,7 @@ struct xport {
 
     odp_port_t odp_port;             /* Datapath port number or ODPP_NONE. */
 
-    struct list bundle_node;         /* In parent xbundle (if it exists). */
+    struct ovs_list bundle_node;     /* In parent xbundle (if it exists). */
     struct xbundle *xbundle;         /* Parent xbundle or null. */
 
     struct netdev *netdev;           /* 'ofport''s netdev. */
@@ -1309,7 +1309,7 @@ group_first_live_bucket(const struct xlate_ctx *ctx,
                         const struct group_dpif *group, int depth)
 {
     struct ofputil_bucket *bucket;
-    const struct list *buckets;
+    const struct ovs_list *buckets;
 
     group_dpif_get_buckets(group, &buckets);
     LIST_FOR_EACH (bucket, list_node, buckets) {
@@ -1331,7 +1331,7 @@ group_best_live_bucket(const struct xlate_ctx *ctx,
     int i = 0;
 
     struct ofputil_bucket *bucket;
-    const struct list *buckets;
+    const struct ovs_list *buckets;
 
     group_dpif_get_buckets(group, &buckets);
     LIST_FOR_EACH (bucket, list_node, buckets) {
@@ -2959,7 +2959,7 @@ static void
 xlate_all_group(struct xlate_ctx *ctx, struct group_dpif *group)
 {
     struct ofputil_bucket *bucket;
-    const struct list *buckets;
+    const struct ovs_list *buckets;
     struct flow old_flow = ctx->xin->flow;
 
     group_dpif_get_buckets(group, &buckets);
index d884c2f..325c022 100644 (file)
@@ -121,7 +121,7 @@ struct ofbundle {
     char *name;                 /* Identifier for log messages. */
 
     /* Configuration. */
-    struct list ports;          /* Contains "struct ofport"s. */
+    struct ovs_list ports;      /* Contains "struct ofport"s. */
     enum port_vlan_mode vlan_mode; /* VLAN mode */
     int vlan;                   /* -1=trunk port, else a 12-bit VLAN ID. */
     unsigned long *trunks;      /* Bitmap of trunked VLANs, if 'vlan' == -1.
@@ -158,7 +158,7 @@ struct ofport_dpif {
 
     odp_port_t odp_port;
     struct ofbundle *bundle;    /* Bundle that contains this port, if any. */
-    struct list bundle_node;    /* In struct ofbundle's "ports" list. */
+    struct ovs_list bundle_node;/* In struct ofbundle's "ports" list. */
     struct cfm *cfm;            /* Connectivity Fault Management, if any. */
     struct bfd *bfd;            /* BFD, if any. */
     bool may_enable;            /* May be enabled in bonds. */
@@ -859,7 +859,7 @@ close_dpif_backer(struct dpif_backer *backer)
 
 /* Datapath port slated for removal from datapath. */
 struct odp_garbage {
-    struct list list_node;
+    struct ovs_list list_node;
     odp_port_t odp_port;
 };
 
@@ -875,7 +875,7 @@ open_dpif_backer(const char *type, struct dpif_backer **backerp)
     struct dpif_port_dump port_dump;
     struct dpif_port port;
     struct shash_node *node;
-    struct list garbage_list;
+    struct ovs_list garbage_list;
     struct odp_garbage *garbage, *next;
 
     struct sset names;
@@ -1352,7 +1352,7 @@ destruct(struct ofproto *ofproto_)
     struct ofproto_packet_in *pin, *next_pin;
     struct rule_dpif *rule;
     struct oftable *table;
-    struct list pins;
+    struct ovs_list pins;
 
     ofproto->backer->need_revalidate = REV_RECONFIGURE;
     xlate_txn_start();
@@ -1427,7 +1427,7 @@ run(struct ofproto *ofproto_)
      * waiting for flow restore to complete. */
     if (!ofproto_get_flow_restore_wait()) {
         struct ofproto_packet_in *pin, *next_pin;
-        struct list pins;
+        struct ovs_list pins;
 
         guarded_list_pop_all(&ofproto->pins, &pins);
         LIST_FOR_EACH_SAFE (pin, next_pin, list_node, &pins) {
@@ -2869,7 +2869,7 @@ bundle_send_learning_packets(struct ofbundle *bundle)
     struct ofpbuf *learning_packet;
     int error, n_packets, n_errors;
     struct mac_entry *e;
-    struct list packets;
+    struct ovs_list packets;
 
     list_init(&packets);
     ovs_rwlock_rdlock(&ofproto->ml->rwlock);
@@ -3947,7 +3947,7 @@ group_construct_stats(struct group_dpif *group)
     OVS_REQUIRES(group->stats_mutex)
 {
     struct ofputil_bucket *bucket;
-    const struct list *buckets;
+    const struct ovs_list *buckets;
 
     group->packet_count = 0;
     group->byte_count = 0;
@@ -3971,7 +3971,7 @@ group_dpif_credit_stats(struct group_dpif *group,
         bucket->stats.packet_count += stats->n_packets;
         bucket->stats.byte_count += stats->n_bytes;
     } else { /* Credit to all buckets */
-        const struct list *buckets;
+        const struct ovs_list *buckets;
 
         group_dpif_get_buckets(group, &buckets);
         LIST_FOR_EACH (bucket, list_node, buckets) {
@@ -4029,7 +4029,7 @@ group_get_stats(const struct ofgroup *group_, struct ofputil_group_stats *ogs)
 {
     struct group_dpif *group = group_dpif_cast(group_);
     struct ofputil_bucket *bucket;
-    const struct list *buckets;
+    const struct ovs_list *buckets;
     struct bucket_counter *bucket_stats;
 
     ovs_mutex_lock(&group->stats_mutex);
@@ -4067,7 +4067,7 @@ group_dpif_lookup(struct ofproto_dpif *ofproto, uint32_t group_id,
 
 void
 group_dpif_get_buckets(const struct group_dpif *group,
-                       const struct list **buckets)
+                       const struct ovs_list **buckets)
 {
     *buckets = &group->up.buckets;
 }
index 2192ea3..c03e606 100644 (file)
@@ -134,7 +134,7 @@ bool group_dpif_lookup(struct ofproto_dpif *ofproto, uint32_t group_id,
                        struct group_dpif **group);
 
 void group_dpif_get_buckets(const struct group_dpif *group,
-                            const struct list **buckets);
+                            const struct ovs_list **buckets);
 enum ofp11_group_type group_dpif_get_type(const struct group_dpif *group);
 
 bool ofproto_has_vlan_splinters(const struct ofproto_dpif *);
index 4dc8adb..d114390 100644 (file)
@@ -99,7 +99,7 @@ struct ofproto {
     struct hmap learned_cookies OVS_GUARDED_BY(ofproto_mutex);
 
     /* List of expirable flows, in all flow tables. */
-    struct list expirable OVS_GUARDED_BY(ofproto_mutex);
+    struct ovs_list expirable OVS_GUARDED_BY(ofproto_mutex);
 
     /* Meter table.
      * OpenFlow meters start at 1.  To avoid confusion we leave the first
@@ -362,7 +362,7 @@ struct rule {
     OVSRCU_TYPE(const struct rule_actions *) actions;
 
     /* In owning meter's 'rules' list.  An empty list if there is no meter. */
-    struct list meter_list_node OVS_GUARDED_BY(ofproto_mutex);
+    struct ovs_list meter_list_node OVS_GUARDED_BY(ofproto_mutex);
 
     /* Flow monitors (e.g. for NXST_FLOW_MONITOR, related to struct ofmonitor).
      *
@@ -375,7 +375,7 @@ struct rule {
 
     /* Optimisation for flow expiry.  In ofproto's 'expirable' list if this
      * rule is expirable, otherwise empty. */
-    struct list expirable OVS_GUARDED_BY(ofproto_mutex);
+    struct ovs_list expirable OVS_GUARDED_BY(ofproto_mutex);
 
     /* Times.  Last so that they are more likely close to the stats managed
      * by the provider. */
@@ -497,7 +497,7 @@ struct ofgroup {
     const long long int created;      /* Creation time. */
     const long long int modified;     /* Time of last modification. */
 
-    struct list buckets;        /* Contains "struct ofputil_bucket"s. */
+    struct ovs_list buckets;        /* Contains "struct ofputil_bucket"s. */
     const uint32_t n_buckets;
 };
 
index 1485fb4..317d392 100644 (file)
@@ -167,7 +167,7 @@ static enum ofperr collect_rules_loose(struct ofproto *,
  * (We can't do this immediately from ofopgroup_complete() because that holds
  * ofproto_mutex, which rule_execute() needs released.) */
 struct rule_execute {
-    struct list list_node;      /* In struct ofproto's "rule_executes" list. */
+    struct ovs_list list_node;  /* In struct ofproto's "rule_executes" list. */
     struct rule *rule;          /* Owns a reference to the rule. */
     ofp_port_t in_port;
     struct ofpbuf *packet;      /* Owns the packet. */
@@ -182,7 +182,7 @@ struct learned_cookie {
         struct hmap_node hmap_node OVS_GUARDED_BY(ofproto_mutex);
 
         /* In 'dead_cookies' list when removed from hmap. */
-        struct list list_node;
+        struct ovs_list list_node;
     } u;
 
     /* Key. */
@@ -202,9 +202,9 @@ static const struct ofpact_learn *next_learn_with_delete(
 static void learned_cookies_inc(struct ofproto *, const struct rule_actions *)
     OVS_REQUIRES(ofproto_mutex);
 static void learned_cookies_dec(struct ofproto *, const struct rule_actions *,
-                                struct list *dead_cookies)
+                                struct ovs_list *dead_cookies)
     OVS_REQUIRES(ofproto_mutex);
-static void learned_cookies_flush(struct ofproto *, struct list *dead_cookies)
+static void learned_cookies_flush(struct ofproto *, struct ovs_list *dead_cookies)
     OVS_REQUIRES(ofproto_mutex);
 
 /* ofport. */
@@ -2751,7 +2751,7 @@ run_rule_executes(struct ofproto *ofproto)
     OVS_EXCLUDED(ofproto_mutex)
 {
     struct rule_execute *e, *next;
-    struct list executes;
+    struct ovs_list executes;
 
     guarded_list_pop_all(&ofproto->rule_executes, &executes);
     LIST_FOR_EACH_SAFE (e, next, list_node, &executes) {
@@ -2771,7 +2771,7 @@ static void
 destroy_rule_executes(struct ofproto *ofproto)
 {
     struct rule_execute *e, *next;
-    struct list executes;
+    struct ovs_list executes;
 
     guarded_list_pop_all(&ofproto->rule_executes, &executes);
     LIST_FOR_EACH_SAFE (e, next, list_node, &executes) {
@@ -2797,7 +2797,7 @@ hash_learned_cookie(ovs_be64 cookie_, uint8_t table_id)
 static void
 learned_cookies_update_one__(struct ofproto *ofproto,
                              const struct ofpact_learn *learn,
-                             int delta, struct list *dead_cookies)
+                             int delta, struct ovs_list *dead_cookies)
     OVS_REQUIRES(ofproto_mutex)
 {
     uint32_t hash = hash_learned_cookie(learn->cookie, learn->table_id);
@@ -2848,7 +2848,7 @@ next_learn_with_delete(const struct rule_actions *actions,
 static void
 learned_cookies_update__(struct ofproto *ofproto,
                          const struct rule_actions *actions,
-                         int delta, struct list *dead_cookies)
+                         int delta, struct ovs_list *dead_cookies)
     OVS_REQUIRES(ofproto_mutex)
 {
     if (actions->has_learn_with_delete) {
@@ -2872,14 +2872,14 @@ learned_cookies_inc(struct ofproto *ofproto,
 static void
 learned_cookies_dec(struct ofproto *ofproto,
                     const struct rule_actions *actions,
-                    struct list *dead_cookies)
+                    struct ovs_list *dead_cookies)
     OVS_REQUIRES(ofproto_mutex)
 {
     learned_cookies_update__(ofproto, actions, -1, dead_cookies);
 }
 
 static void
-learned_cookies_flush(struct ofproto *ofproto, struct list *dead_cookies)
+learned_cookies_flush(struct ofproto *ofproto, struct ovs_list *dead_cookies)
     OVS_REQUIRES(ofproto_mutex)
 {
     struct learned_cookie *c, *next;
@@ -3315,7 +3315,7 @@ handle_table_features_request(struct ofconn *ofconn,
 {
     struct ofproto *ofproto = ofconn_get_ofproto(ofconn);
     struct ofputil_table_features *features;
-    struct list replies;
+    struct ovs_list replies;
     struct ofpbuf msg;
     size_t i;
 
@@ -3341,7 +3341,7 @@ handle_table_features_request(struct ofconn *ofconn,
 }
 
 static void
-append_port_stat(struct ofport *port, struct list *replies)
+append_port_stat(struct ofport *port, struct ovs_list *replies)
 {
     struct ofputil_port_stats ops = { .port_no = port->pp.port_no };
 
@@ -3359,11 +3359,11 @@ append_port_stat(struct ofport *port, struct list *replies)
 static void
 handle_port_request(struct ofconn *ofconn,
                     const struct ofp_header *request, ofp_port_t port_no,
-                    void (*cb)(struct ofport *, struct list *replies))
+                    void (*cb)(struct ofport *, struct ovs_list *replies))
 {
     struct ofproto *ofproto = ofconn_get_ofproto(ofconn);
     struct ofport *port;
-    struct list replies;
+    struct ovs_list replies;
 
     ofpmp_init(&replies, request);
     if (port_no != OFPP_ANY) {
@@ -3395,7 +3395,7 @@ handle_port_stats_request(struct ofconn *ofconn,
 }
 
 static void
-append_port_desc(struct ofport *port, struct list *replies)
+append_port_desc(struct ofport *port, struct ovs_list *replies)
 {
     ofputil_append_port_desc_stats_reply(&port->pp, replies);
 }
@@ -3783,7 +3783,7 @@ handle_flow_stats_request(struct ofconn *ofconn,
     struct ofputil_flow_stats_request fsr;
     struct rule_criteria criteria;
     struct rule_collection rules;
-    struct list replies;
+    struct ovs_list replies;
     enum ofperr error;
     size_t i;
 
@@ -4014,7 +4014,7 @@ handle_aggregate_stats_request(struct ofconn *ofconn,
 
 struct queue_stats_cbdata {
     struct ofport *ofport;
-    struct list replies;
+    struct ovs_list replies;
     long long int now;
 };
 
@@ -4329,7 +4329,7 @@ modify_flows__(struct ofproto *ofproto, struct ofputil_flow_mod *fm,
                const struct flow_mod_requester *req)
     OVS_REQUIRES(ofproto_mutex)
 {
-    struct list dead_cookies = LIST_INITIALIZER(&dead_cookies);
+    struct ovs_list dead_cookies = LIST_INITIALIZER(&dead_cookies);
     enum nx_flow_update_event event;
     size_t i;
 
@@ -4510,7 +4510,7 @@ delete_flows__(const struct rule_collection *rules,
     OVS_REQUIRES(ofproto_mutex)
 {
     if (rules->n) {
-        struct list dead_cookies = LIST_INITIALIZER(&dead_cookies);
+        struct ovs_list dead_cookies = LIST_INITIALIZER(&dead_cookies);
         struct ofproto *ofproto = rules->rules[0]->ofproto;
         struct rule *rule, *next;
         size_t i;
@@ -4927,7 +4927,7 @@ handle_barrier_request(struct ofconn *ofconn, const struct ofp_header *oh)
 static void
 ofproto_compose_flow_refresh_update(const struct rule *rule,
                                     enum nx_flow_monitor_flags flags,
-                                    struct list *msgs)
+                                    struct ovs_list *msgs)
     OVS_REQUIRES(ofproto_mutex)
 {
     const struct rule_actions *actions;
@@ -4959,7 +4959,7 @@ ofproto_compose_flow_refresh_update(const struct rule *rule,
 
 void
 ofmonitor_compose_refresh_updates(struct rule_collection *rules,
-                                  struct list *msgs)
+                                  struct ovs_list *msgs)
     OVS_REQUIRES(ofproto_mutex)
 {
     size_t i;
@@ -5076,7 +5076,7 @@ handle_flow_monitor_request(struct ofconn *ofconn, const struct ofp_header *oh)
     struct ofmonitor **monitors;
     size_t n_monitors, allocated_monitors;
     struct rule_collection rules;
-    struct list replies;
+    struct ovs_list replies;
     enum ofperr error;
     struct ofpbuf b;
     size_t i;
@@ -5169,7 +5169,7 @@ handle_flow_monitor_cancel(struct ofconn *ofconn, const struct ofp_header *oh)
  */
 struct meter {
     long long int created;      /* Time created. */
-    struct list rules;          /* List of "struct rule_dpif"s. */
+    struct ovs_list rules;      /* List of "struct rule_dpif"s. */
     ofproto_meter_id provider_meter_id;
     uint16_t flags;             /* Meter flags. */
     uint16_t n_bands;           /* Number of meter bands. */
@@ -5422,7 +5422,7 @@ handle_meter_request(struct ofconn *ofconn, const struct ofp_header *request,
                      enum ofptype type)
 {
     struct ofproto *ofproto = ofconn_get_ofproto(ofconn);
-    struct list replies;
+    struct ovs_list replies;
     uint64_t bands_stub[256 / 8];
     struct ofpbuf bands;
     uint32_t meter_id, first, last;
@@ -5572,7 +5572,7 @@ group_get_ref_count(struct ofgroup *group)
 }
 
 static void
-append_group_stats(struct ofgroup *group, struct list *replies)
+append_group_stats(struct ofgroup *group, struct ovs_list *replies)
 {
     struct ofputil_group_stats ogs;
     const struct ofproto *ofproto = group->ofproto;
@@ -5606,11 +5606,11 @@ append_group_stats(struct ofgroup *group, struct list *replies)
 static void
 handle_group_request(struct ofconn *ofconn,
                      const struct ofp_header *request, uint32_t group_id,
-                     void (*cb)(struct ofgroup *, struct list *replies))
+                     void (*cb)(struct ofgroup *, struct ovs_list *replies))
 {
     struct ofproto *ofproto = ofconn_get_ofproto(ofconn);
     struct ofgroup *group;
-    struct list replies;
+    struct ovs_list replies;
 
     ofpmp_init(&replies, request);
     if (group_id == OFPG_ALL) {
@@ -5645,7 +5645,7 @@ handle_group_stats_request(struct ofconn *ofconn,
 }
 
 static void
-append_group_desc(struct ofgroup *group, struct list *replies)
+append_group_desc(struct ofgroup *group, struct ovs_list *replies)
 {
     struct ofputil_group_desc gds;
 
index d769a53..1300e00 100644 (file)
@@ -36,8 +36,8 @@
 
 struct pinqueue {
     struct hmap_node node;      /* In struct pinsched's 'queues' hmap. */
-    ofp_port_t port_no;           /* Port number. */
-    struct list packets;        /* Contains "struct ofpbuf"s. */
+    ofp_port_t port_no;         /* Port number. */
+    struct ovs_list packets;    /* Contains "struct ofpbuf"s. */
     int n;                      /* Number of packets in 'packets'. */
 };
 
@@ -183,7 +183,7 @@ get_token(struct pinsched *ps)
 
 void
 pinsched_send(struct pinsched *ps, ofp_port_t port_no,
-              struct ofpbuf *packet, struct list *txq)
+              struct ofpbuf *packet, struct ovs_list *txq)
 {
     list_init(txq);
     if (!ps) {
@@ -215,7 +215,7 @@ pinsched_send(struct pinsched *ps, ofp_port_t port_no,
 }
 
 void
-pinsched_run(struct pinsched *ps, struct list *txq)
+pinsched_run(struct pinsched *ps, struct ovs_list *txq)
 {
     list_init(txq);
     if (ps) {
index 8bbdf96..96993df 100644 (file)
@@ -20,7 +20,7 @@
 #include <stdint.h>
 #include "flow.h"
 
-struct list;
+struct ovs_list;
 struct ofpbuf;
 
 struct pinsched *pinsched_create(int rate_limit, int burst_limit);
@@ -29,8 +29,8 @@ void pinsched_get_limits(const struct pinsched *,
 void pinsched_set_limits(struct pinsched *, int rate_limit, int burst_limit);
 void pinsched_destroy(struct pinsched *);
 void pinsched_send(struct pinsched *, ofp_port_t port_no, struct ofpbuf *,
-                   struct list *txq);
-void pinsched_run(struct pinsched *, struct list *txq);
+                   struct ovs_list *txq);
+void pinsched_run(struct pinsched *, struct ovs_list *txq);
 void pinsched_wait(struct pinsched *);
 
 struct pinsched_stats {
index 639f2ff..989af3b 100644 (file)
@@ -102,7 +102,7 @@ struct ovsdb_jsonrpc_server {
 struct ovsdb_jsonrpc_remote {
     struct ovsdb_jsonrpc_server *server;
     struct pstream *listener;   /* Listener, if passive. */
-    struct list sessions;       /* List of "struct ovsdb_jsonrpc_session"s. */
+    struct ovs_list sessions;   /* List of "struct ovsdb_jsonrpc_session"s. */
     uint8_t dscp;
 };
 
@@ -364,7 +364,7 @@ ovsdb_jsonrpc_server_get_memory_usage(const struct ovsdb_jsonrpc_server *svr,
 /* JSON-RPC database server session. */
 
 struct ovsdb_jsonrpc_session {
-    struct list node;           /* Element in remote's sessions list. */
+    struct ovs_list node;       /* Element in remote's sessions list. */
     struct ovsdb_session up;
     struct ovsdb_jsonrpc_remote *remote;
 
index 1103e6d..04586e7 100644 (file)
@@ -56,11 +56,11 @@ bool ovsdb_schema_equal(const struct ovsdb_schema *,
 /* Database. */
 struct ovsdb {
     struct ovsdb_schema *schema;
-    struct list replicas;       /* Contains "struct ovsdb_replica"s. */
+    struct ovs_list replicas;   /* Contains "struct ovsdb_replica"s. */
     struct shash tables;        /* Contains "struct ovsdb_table *"s. */
 
     /* Triggers. */
-    struct list triggers;       /* Contains "struct ovsdb_trigger"s. */
+    struct ovs_list triggers;   /* Contains "struct ovsdb_trigger"s. */
     bool run_triggers;
 };
 
@@ -79,7 +79,7 @@ struct json *ovsdb_execute(struct ovsdb *, const struct ovsdb_session *,
 /* Database replication. */
 
 struct ovsdb_replica {
-    struct list node;           /* Element in "struct ovsdb" replicas list. */
+    struct ovs_list node;       /* Element in "struct ovsdb" replicas list. */
     const struct ovsdb_replica_class *class;
 };
 
index 8920a0e..62820d5 100644 (file)
@@ -36,8 +36,8 @@ struct ovsdb_column_set;
  * ovsdb_weak_ref" structures are created for them.
  */
 struct ovsdb_weak_ref {
-    struct list src_node;       /* In src->src_refs list. */
-    struct list dst_node;       /* In destination row's dst_refs list. */
+    struct ovs_list src_node;   /* In src->src_refs list. */
+    struct ovs_list dst_node;   /* In destination row's dst_refs list. */
     struct ovsdb_row *src;      /* Source row. */
 };
 
@@ -48,8 +48,8 @@ struct ovsdb_row {
     struct ovsdb_txn_row *txn_row; /* Transaction that row is in, if any. */
 
     /* Weak references. */
-    struct list src_refs;       /* Weak references from this row. */
-    struct list dst_refs;       /* Weak references to this row. */
+    struct ovs_list src_refs;   /* Weak references from this row. */
+    struct ovs_list dst_refs;   /* Weak references to this row. */
 
     /* Number of strong refs to this row from other rows, in this table or
      * other tables, through 'uuid' columns that have a 'refTable' constraint
index 047cbb7..82c733f 100644 (file)
@@ -28,7 +28,7 @@ struct ovsdb_server;
  * (e.g. jsonrpc-server.c) embed this in a larger data structure.  */
 struct ovsdb_session {
     struct ovsdb_server *server;
-    struct list completions;    /* Completed triggers. */
+    struct ovs_list completions;/* Completed triggers. */
     struct hmap waiters;        /* "ovsdb_lock_waiter *"s by lock name. */
 };
 
@@ -46,7 +46,7 @@ struct ovsdb_lock {
     struct hmap_node hmap_node;  /* In ovsdb_server's "locks" hmap. */
     struct ovsdb_server *server; /* The containing server. */
     char *name;                  /* Unique name. */
-    struct list waiters;         /* Contains "struct ovsdb_lock_waiter"s. */
+    struct ovs_list waiters;     /* Contains "struct ovsdb_lock_waiter"s. */
 };
 
 struct ovsdb_lock_waiter *ovsdb_lock_get_owner(const struct ovsdb_lock *);
@@ -66,7 +66,7 @@ struct ovsdb_lock_waiter {
     char *lock_name;
 
     struct ovsdb_session *session;
-    struct list lock_node;      /* In ->lock->waiters's list. */
+    struct ovs_list lock_node;  /* In ->lock->waiters's list. */
 };
 
 struct ovsdb_session *ovsdb_lock_waiter_remove(struct ovsdb_lock_waiter *);
index c620dee..9e03963 100644 (file)
 
 struct ovsdb_txn {
     struct ovsdb *db;
-    struct list txn_tables;     /* Contains "struct ovsdb_txn_table"s. */
+    struct ovs_list txn_tables; /* Contains "struct ovsdb_txn_table"s. */
     struct ds comment;
 };
 
 /* A table modified by a transaction. */
 struct ovsdb_txn_table {
-    struct list node;           /* Element in ovsdb_txn's txn_tables list. */
+    struct ovs_list node;       /* Element in ovsdb_txn's txn_tables list. */
     struct ovsdb_table *table;
     struct hmap txn_rows;       /* Contains "struct ovsdb_txn_row"s. */
 
index f686b15..823ea9b 100644 (file)
@@ -23,7 +23,7 @@ struct ovsdb;
 struct ovsdb_trigger {
     struct ovsdb_session *session; /* Session that owns this trigger. */
     struct ovsdb *db;           /* Database on which trigger acts. */
-    struct list node;           /* !result: in db->triggers;
+    struct ovs_list node;       /* !result: in db->triggers;
                                  * result: in session->completions. */
     struct json *request;       /* Database request. */
     struct json *result;        /* Result (null if none yet). */
index ef7ed3a..5fd7149 100644 (file)
 /* Sample list element. */
 struct element {
     int value;
-    struct list node;
+    struct ovs_list node;
 };
 
 /* Puts the 'n' values in 'values' into 'elements', and then puts those
  * elements in order into 'list'. */
 static void
-make_list(struct list *list, struct element elements[],
+make_list(struct ovs_list *list, struct element elements[],
           int values[], size_t n)
 {
     size_t i;
@@ -49,7 +49,7 @@ make_list(struct list *list, struct element elements[],
 /* Verifies that 'list' contains exactly the 'n' values in 'values', in the
  * specified order. */
 static void
-check_list(struct list *list, const int values[], size_t n)
+check_list(struct ovs_list *list, const int values[], size_t n)
 {
     struct element *e;
     size_t i;
@@ -81,7 +81,7 @@ check_list(struct list *list, const int values[], size_t n)
 #if 0
 /* Prints the values in 'list', plus 'name' as a title. */
 static void
-print_list(const char *name, struct list *list)
+print_list(const char *name, struct ovs_list *list)
 {
     struct element *e;
 
@@ -103,7 +103,7 @@ test_list_construction(void)
     for (n = 0; n <= MAX_ELEMS; n++) {
         struct element elements[MAX_ELEMS];
         int values[MAX_ELEMS];
-        struct list list;
+        struct ovs_list list;
 
         make_list(&list, elements, values, n);
         check_list(&list, values, n);
@@ -123,7 +123,7 @@ test_list_for_each_safe(void)
         for (pattern = 0; pattern < 1ul << n; pattern++) {
             struct element elements[MAX_ELEMS];
             int values[MAX_ELEMS];
-            struct list list;
+            struct ovs_list list;
             struct element *e, *next;
             size_t values_idx, n_remaining;
             int i;
index b078f93..5e6afae 100644 (file)
@@ -581,7 +581,7 @@ dump_trivial_stats_transaction(const char *vconn_name, enum ofpraw raw)
  *
  * Destroys all of the 'requests'. */
 static void
-transact_multiple_noreply(struct vconn *vconn, struct list *requests)
+transact_multiple_noreply(struct vconn *vconn, struct ovs_list *requests)
 {
     struct ofpbuf *request, *reply;
 
@@ -606,7 +606,7 @@ transact_multiple_noreply(struct vconn *vconn, struct list *requests)
 static void
 transact_noreply(struct vconn *vconn, struct ofpbuf *request)
 {
-    struct list requests;
+    struct ovs_list requests;
 
     list_init(&requests);
     list_push_back(&requests, &request->list_node);
@@ -2554,7 +2554,7 @@ read_flows_from_switch(struct vconn *vconn,
 
 static void
 fte_make_flow_mod(const struct fte *fte, int index, uint16_t command,
-                  enum ofputil_protocol protocol, struct list *packets)
+                  enum ofputil_protocol protocol, struct ovs_list *packets)
 {
     const struct fte_version *version = fte->versions[index];
     struct ofputil_flow_mod fm;
@@ -2594,7 +2594,7 @@ ofctl_replace_flows(int argc OVS_UNUSED, char *argv[])
     enum { FILE_IDX = 0, SWITCH_IDX = 1 };
     enum ofputil_protocol usable_protocols, protocol;
     struct classifier cls;
-    struct list requests;
+    struct ovs_list requests;
     struct vconn *vconn;
     struct fte *fte;
 
index b799557..2c272ed 100644 (file)
@@ -789,7 +789,7 @@ struct vsctl_context {
 struct vsctl_bridge {
     struct ovsrec_bridge *br_cfg;
     char *name;
-    struct list ports;          /* Contains "struct vsctl_port"s. */
+    struct ovs_list ports;      /* Contains "struct vsctl_port"s. */
 
     /* VLAN ("fake") bridge support.
      *
@@ -802,14 +802,14 @@ struct vsctl_bridge {
 };
 
 struct vsctl_port {
-    struct list ports_node;     /* In struct vsctl_bridge's 'ports' list. */
-    struct list ifaces;         /* Contains "struct vsctl_iface"s. */
+    struct ovs_list ports_node;  /* In struct vsctl_bridge's 'ports' list. */
+    struct ovs_list ifaces;      /* Contains "struct vsctl_iface"s. */
     struct ovsrec_port *port_cfg;
     struct vsctl_bridge *bridge;
 };
 
 struct vsctl_iface {
-    struct list ifaces_node;     /* In struct vsctl_port's 'ifaces' list. */
+    struct ovs_list ifaces_node; /* In struct vsctl_port's 'ifaces' list. */
     struct ovsrec_interface *iface_cfg;
     struct vsctl_port *port;
 };
index fea273a..228ee91 100644 (file)
@@ -74,7 +74,7 @@ struct iface {
      *
      * They are immutable: they never change between iface_create() and
      * iface_destroy(). */
-    struct list port_elem;      /* Element in struct port's "ifaces" list. */
+    struct ovs_list port_elem;  /* Element in struct port's "ifaces" list. */
     struct hmap_node name_node; /* In struct bridge's "iface_by_name" hmap. */
     struct hmap_node ofp_port_node; /* In struct bridge's "ifaces" hmap. */
     struct port *port;          /* Containing port. */
@@ -105,7 +105,7 @@ struct port {
 
     /* An ordinary bridge port has 1 interface.
      * A bridge port for bonding has at least 2 interfaces. */
-    struct list ifaces;         /* List of "struct iface"s. */
+    struct ovs_list ifaces;    /* List of "struct iface"s. */
 };
 
 struct bridge {
index b7a6d2c..afc7f38 100644 (file)
@@ -725,11 +725,11 @@ struct vtep_ctl_context {
 struct vtep_ctl_pswitch {
     const struct vteprec_physical_switch *ps_cfg;
     char *name;
-    struct list ports;          /* Contains "struct vteprec_physical_port"s. */
+    struct ovs_list ports;      /* Contains "struct vteprec_physical_port"s. */
 };
 
 struct vtep_ctl_port {
-    struct list ports_node;     /* In struct vtep_ctl_pswitch's 'ports' list. */
+    struct ovs_list ports_node; /* In struct vtep_ctl_pswitch's 'ports' list. */
     const struct vteprec_physical_port *port_cfg;
     struct vtep_ctl_pswitch *ps;
     struct shash bindings;      /* Maps from vlan to vtep_ctl_lswitch. */
@@ -749,12 +749,12 @@ struct vtep_ctl_mcast_mac {
     const struct vteprec_mcast_macs_remote *remote_cfg;
 
     const struct vteprec_physical_locator_set *ploc_set_cfg;
-    struct list locators;       /* Contains 'vtep_ctl_ploc's. */
+    struct ovs_list locators;   /* Contains 'vtep_ctl_ploc's. */
 };
 
 struct vtep_ctl_ploc {
-    struct list locators_node;  /* In struct vtep_ctl_ploc_set's 'locators'
-                                   list. */
+    struct ovs_list locators_node;  /* In struct vtep_ctl_ploc_set's 'locators'
+                                       list. */
     const struct vteprec_physical_locator *ploc_cfg;
 };