datapath: Eliminate synchronize_rcu() in table swap.
We found out some time ago that synchronize_rcu() can block for multiple
seconds in some cases, so it's a good idea to eliminate as many of them
as we can.
This commit eliminates a call to synchronize_rcu() from functions that
expand or flush flow tables. To avoid adding a member to dp_table that
specifies the "free_flows" argument to dp_table_destroy(), the commit
uses two different callback functions and manually inlines dp_table_swap()
into its callers.
Bug #1233.