openvswitch: Move table destroy to dp-rcu callback.

Ths simplifies flow-table-destroy API. No need to pass explicit
parameter about context.

Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
Acked-by: Thomas Graf <tgraf@redhat.com>
This commit is contained in:
Pravin B Shelar 2014-05-06 18:41:20 -07:00
parent 25cd9ba0ab
commit 9b996e544a
3 changed files with 10 additions and 8 deletions

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 2007-2013 Nicira, Inc.
* Copyright (c) 2007-2014 Nicira, Inc.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of version 2 of the GNU General Public
@ -250,11 +250,14 @@ skip_flows:
__table_instance_destroy(ti);
}
void ovs_flow_tbl_destroy(struct flow_table *table, bool deferred)
/* No need for locking this function is called from RCU callback or
* error path.
*/
void ovs_flow_tbl_destroy(struct flow_table *table)
{
struct table_instance *ti = ovsl_dereference(table->ti);
struct table_instance *ti = rcu_dereference_raw(table->ti);
table_instance_destroy(ti, deferred);
table_instance_destroy(ti, false);
}
struct sw_flow *ovs_flow_tbl_dump_next(struct table_instance *ti,