bridge: Use hash table instead of sparse array for bridge ports.
authorBen Pfaff <blp@nicira.com>
Mon, 19 Jul 2010 18:23:05 +0000 (11:23 -0700)
committerBen Pfaff <blp@nicira.com>
Fri, 1 Oct 2010 17:25:10 +0000 (10:25 -0700)
commitd9a8717a004310044b3157f4fb46e8fd00083a73
tree527f965a4b99ee4a81498847d1e4960a1701ffbc
parentf3099647623f2b13ece56cf8cf31761c00c1c297
bridge: Use hash table instead of sparse array for bridge ports.

The main advantage of a sparse array over a hash table is that it can be
iterated in numerical order.  But the OVS implementation of sparse arrays
is quite expensive in terms of memory: on a 32-bit system, a sparse array
with exactly 1 nonnull element has 512 bytes of overhead.  In this case,
the sparse array's property of iteration in numerical order is not
important, so this commit converts it to a hash table to save memory.
vswitchd/bridge.c