[ovs-dev] [PATCH] ofproto-dpif: move per-backer wait calls from wait to type_wait

Ben Pfaff blp at nicira.com
Thu Aug 15 22:40:44 UTC 2013


On Fri, Aug 16, 2013 at 07:25:18AM +0900, YAMAMOTO Takashi wrote:
> > On Thu, Aug 15, 2013 at 08:25:44PM +0900, YAMAMOTO Takashi wrote:
> >> 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 <yamt at mwd.biglobe.ne.jp>
> > 
> > Applied, thanks.
> > 
> > I couldn't see how this was O(N^2), although I agree that it is
> > excessive, so I changed the second paragraph above it:
> > 
> >     This eliminates excessive poll slot consumption when there is more
> >     than one bridge.
> 
> a backer for N bridges would have M ports.
> M >= N because of local ports.
> 
> each bridges was doing dpif_wait, which does rx wait calls for each ports.
> it costs N*M >= N^2.

OK.

Anyway, I applied this with the explanation above.



More information about the dev mailing list