summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorRoopa Prabhu <roopa@cumulusnetworks.com>2016-06-18 22:30:05 (GMT)
committerThomas Haller <thaller@redhat.com>2016-07-08 10:02:07 (GMT)
commitb7d458c1939913c46b32c7643b412767b87d98c2 (patch)
tree8b61fd5e2de3d2502ae3af09a2f12f95c01e62b2 /include
parent6b15d040dcccf41d9686387fa6072f138e9c22e8 (diff)
downloadlibnl-b7d458c1939913c46b32c7643b412767b87d98c2.zip
libnl-b7d458c1939913c46b32c7643b412767b87d98c2.tar.gz
libnl-b7d458c1939913c46b32c7643b412767b87d98c2.tar.bz2
hashtable: convert hashtable bucket list to a circular doubly linked list
This patch converts hashtable bucket list to a circular doubly linked list for O(1) enqueue/dequeue. This helps support: - a netlink object append that causes enqueue at tail and - support for non-exclusive (ie create only flag) netlink objects causes an enqueue at head Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
Diffstat (limited to 'include')
-rw-r--r--include/netlink/hashtable.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/netlink/hashtable.h b/include/netlink/hashtable.h
index d9e6ee4..70d8c0f 100644
--- a/include/netlink/hashtable.h
+++ b/include/netlink/hashtable.h
@@ -20,7 +20,7 @@ typedef struct nl_hash_node {
uint32_t key;
uint32_t key_size;
struct nl_object * obj;
- struct nl_hash_node * next;
+ struct nl_list_head list;
} nl_hash_node_t;
typedef struct nl_hash_table {