move per-backer wait calls (dpif_wait/udpif_wait) from ofproto_wait to ofproto_type_wait.
this fixes O(N^2) behaviour (eg. poll slot consumption) for dpif-netdev where N is the number of bridges. Signed-off-by: YAMAMOTO Takashi <y...@mwd.biglobe.ne.jp> --- ofproto/ofproto-dpif.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c index 229b16c..3bc0e98 100644 --- a/ofproto/ofproto-dpif.c +++ b/ofproto/ofproto-dpif.c @@ -1051,6 +1051,8 @@ type_wait(const char *type) } timer_wait(&backer->next_expiration); + dpif_wait(backer->dpif); + udpif_wait(backer->udpif); } /* Basic life-cycle. */ @@ -1625,8 +1627,6 @@ wait(struct ofproto *ofproto_) return; } - dpif_wait(ofproto->backer->dpif); - udpif_wait(ofproto->backer->udpif); if (ofproto->sflow) { dpif_sflow_wait(ofproto->sflow); } -- 1.8.3.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev