From: Ethan Jackson Date: Fri, 22 Jul 2011 00:58:47 +0000 (-0700) Subject: mac-learning: Fix serious performance bug in the learning table. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7bbe0453f5c6321c410149755de60324c186a71a;p=openvswitch mac-learning: Fix serious performance bug in the learning table. Due to a typo, the mac-learning hash table had dissolved into a linked list. This caused a significant reduction in performance. --- diff --git a/lib/mac-learning.c b/lib/mac-learning.c index f9f4db3d..ff240e97 100644 --- a/lib/mac-learning.c +++ b/lib/mac-learning.c @@ -74,7 +74,7 @@ mac_table_bucket(const struct mac_learning *ml, uint16_t vlan) { uint32_t hash = mac_table_hash(mac, vlan); - const struct list *list = &ml->table[hash & MAC_HASH_BITS]; + const struct list *list = &ml->table[hash & MAC_HASH_MASK]; return (struct list *) list; }