From 8f30d09ab053824b0ee7297fc8475fc1405beb93 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Tue, 19 Jan 2010 10:41:46 -0800 Subject: [PATCH] mac-learning: Rename "non-learning VLANs" to "flood VLANs". Usually positive names are better than negative ones. --- lib/mac-learning.c | 27 +++++++++++++-------------- lib/mac-learning.h | 10 +++++----- vswitchd/bridge.c | 4 ++-- 3 files changed, 20 insertions(+), 21 deletions(-) diff --git a/lib/mac-learning.c b/lib/mac-learning.c index 3f1db146..a9d414d2 100644 --- a/lib/mac-learning.c +++ b/lib/mac-learning.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009 Nicira Networks. + * Copyright (c) 2008, 2009, 2010 Nicira Networks. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -130,7 +130,7 @@ mac_learning_create(void) list_push_front(&ml->free, &s->lru_node); } ml->secret = random_uint32(); - ml->non_learning_vlans = NULL; + ml->flood_vlans = NULL; return ml; } @@ -139,24 +139,24 @@ void mac_learning_destroy(struct mac_learning *ml) { if (ml) { - bitmap_free(ml->non_learning_vlans); + bitmap_free(ml->flood_vlans); } free(ml); } -/* Provides a bitmap of VLANs which have learning disabled. It takes - * ownership of the bitmap. Returns true if the set has changed from - * the previous value. */ +/* Provides a bitmap of VLANs which have learning disabled, that is, VLANs on + * which all packets are flooded. It takes ownership of the bitmap. Returns + * true if the set has changed from the previous value. */ bool -mac_learning_set_disabled_vlans(struct mac_learning *ml, unsigned long *bitmap) +mac_learning_set_flood_vlans(struct mac_learning *ml, unsigned long *bitmap) { bool ret = (bitmap == NULL - ? ml->non_learning_vlans != NULL - : (ml->non_learning_vlans == NULL - || !bitmap_equal(bitmap, ml->non_learning_vlans, 4096))); + ? ml->flood_vlans != NULL + : (ml->flood_vlans == NULL + || !bitmap_equal(bitmap, ml->flood_vlans, 4096))); - bitmap_free(ml->non_learning_vlans); - ml->non_learning_vlans = bitmap; + bitmap_free(ml->flood_vlans); + ml->flood_vlans = bitmap; return ret; } @@ -164,8 +164,7 @@ mac_learning_set_disabled_vlans(struct mac_learning *ml, unsigned long *bitmap) static bool is_learning_vlan(const struct mac_learning *ml, uint16_t vlan) { - return !(ml->non_learning_vlans - && bitmap_is_set(ml->non_learning_vlans, vlan)); + return !(ml->flood_vlans && bitmap_is_set(ml->flood_vlans, vlan)); } /* Attempts to make 'ml' learn from the fact that a frame from 'src_mac' was diff --git a/lib/mac-learning.h b/lib/mac-learning.h index ed843cd4..c4a0e28b 100644 --- a/lib/mac-learning.h +++ b/lib/mac-learning.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009 Nicira Networks. + * Copyright (c) 2008, 2009, 2010 Nicira Networks. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,14 +51,14 @@ struct mac_learning { front, most recently used at the back. */ struct list table[MAC_HASH_SIZE]; /* Hash table. */ struct mac_entry entries[MAC_MAX]; /* All entries. */ - uint32_t secret; /* Secret for */ - unsigned long *non_learning_vlans; /* Bitmap of learning disabled VLANs. */ + uint32_t secret; /* Secret for randomizing hash table. */ + unsigned long *flood_vlans; /* Bitmap of learning disabled VLANs. */ }; struct mac_learning *mac_learning_create(void); void mac_learning_destroy(struct mac_learning *); -bool mac_learning_set_disabled_vlans(struct mac_learning *, - unsigned long *bitmap); +bool mac_learning_set_flood_vlans(struct mac_learning *, + unsigned long *bitmap); tag_type mac_learning_learn(struct mac_learning *, const uint8_t src[ETH_ADDR_LEN], uint16_t vlan, uint16_t src_port); diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c index d7f1979a..a09f3435 100644 --- a/vswitchd/bridge.c +++ b/vswitchd/bridge.c @@ -3522,7 +3522,7 @@ mirror_reconfigure(struct bridge *br) } } - /* Update learning disabled vlans (for RSPAN). */ + /* Update flooded vlans (for RSPAN). */ rspan_vlans = NULL; if (br->cfg->n_flood_vlans) { rspan_vlans = bitmap_allocate(4096); @@ -3539,7 +3539,7 @@ mirror_reconfigure(struct bridge *br) } } } - if (mac_learning_set_disabled_vlans(br->ml, rspan_vlans)) { + if (mac_learning_set_flood_vlans(br->ml, rspan_vlans)) { bridge_flush(br); } } -- 2.30.2