ofproto-dpif: Use shash_find_and_delete() to simplify close_dpif_backer().
authorBen Pfaff <blp@nicira.com>
Mon, 16 Sep 2013 21:37:09 +0000 (14:37 -0700)
committerBen Pfaff <blp@nicira.com>
Tue, 17 Sep 2013 20:47:33 +0000 (13:47 -0700)
Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Jarno Rajahalme <jrajahalme@nicira.com>
ofproto/ofproto-dpif.c

index b41c179..28dc661 100644 (file)
@@ -1079,8 +1079,6 @@ dealloc(struct ofproto *ofproto_)
 static void
 close_dpif_backer(struct dpif_backer *backer)
 {
-    struct shash_node *node;
-
     ovs_assert(backer->refcount > 0);
 
     if (--backer->refcount) {
@@ -1095,9 +1093,8 @@ close_dpif_backer(struct dpif_backer *backer)
     simap_destroy(&backer->tnl_backers);
     ovs_rwlock_destroy(&backer->odp_to_ofport_lock);
     hmap_destroy(&backer->odp_to_ofport_map);
-    node = shash_find(&all_dpif_backers, backer->type);
+    shash_find_and_delete(&all_dpif_backers, backer->type);
     free(backer->type);
-    shash_delete(&all_dpif_backers, node);
     dpif_close(backer->dpif);
 
     ovs_assert(hmap_is_empty(&backer->subfacets));