On Fri, Feb 28, 2014 at 01:06:11PM +0900, YAMAMOTO Takashi wrote:
> > @@ -1452,32 +1507,18 @@ dpif_netdev_queue_to_priority(const struct dpif 
> > *dpif OVS_UNUSED,
> >      return 0;
> >  }
> >  
> > -static struct dp_netdev_queue *
> > -find_nonempty_queue(struct dp_netdev *dp)
> > -    OVS_REQUIRES(dp->queue_mutex)
> > -{
> > -    int i;
> > -
> > -    for (i = 0; i < N_QUEUES; i++) {
> > -        struct dp_netdev_queue *q = &dp->queues[i];
> > -        if (q->head != q->tail) {
> > -            return q;
> > -        }
> > -    }
> > -    return NULL;
> > -}
> 
> what's the rationale to remove DPIF_UC_MISS's precedence over DPIF_UC_ACTION?
> (just a curious question)

Originally, dpif-netdev preferred DPIF_UC_MISS over DPIF_UC_ACTION
because we were very concerned that flow setups always take place as
quickly as possible and that anything else was secondary.  However, a
lot has changed since then, and these days it seems reasonable to try to
better balance the various kinds of packet handling.  In particular,
starving all actions in the presence of any flow misses doesn't seem
like a great idea.  There might be a better balance than the one in this
patch, but I'm willing to let that come out in testing.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to