[ovs-dev] [PATCH 1/8] Delete meters in the right place.
Jarno Rajahalme
jrajahalme at nicira.com
Sun Sep 8 01:27:07 UTC 2013
Signed-off-by: Jarno Rajahalme <jrajahalme at nicira.com>
---
ofproto/ofproto.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c
index 4d33de7..fe81310 100644
--- a/ofproto/ofproto.c
+++ b/ofproto/ofproto.c
@@ -1138,11 +1138,6 @@ ofproto_destroy__(struct ofproto *ofproto)
ovs_assert(list_is_empty(&ofproto->pending));
ovs_assert(!ofproto->n_pending);
- if (ofproto->meters) {
- meter_delete(ofproto, 1, ofproto->meter_features.max_meters);
- free(ofproto->meters);
- }
-
delete_group(ofproto, OFPG_ALL);
ovs_rwlock_destroy(&ofproto->groups_rwlock);
hmap_destroy(&ofproto->groups);
@@ -1184,6 +1179,13 @@ ofproto_destroy(struct ofproto *p)
return;
}
+ if (p->meters) {
+ meter_delete(p, 1, p->meter_features.max_meters);
+ p->meter_features.max_meters = 0;
+ free(p->meters);
+ p->meters = NULL;
+ }
+
ofproto_flush__(p);
HMAP_FOR_EACH_SAFE (ofport, next_ofport, hmap_node, &p->ports) {
ofport_destroy(ofport);
--
1.7.10.4
More information about the dev
mailing list