On Fri, Sep 23, 2011 at 03:22:32PM -0700, Jesse Gross wrote: > On Fri, Sep 23, 2011 at 2:38 PM, Ben Pfaff <[email protected]> wrote: > > On Fri, Sep 23, 2011 at 02:20:13PM -0700, Jesse Gross wrote: > >> Currently we publish several multicast groups for upcalls and let > >> userspace sockets subscribe to them. ??The benefit of this is mostly > >> that userspace is the one doing the subscription - the actual > >> multicast capability is not currently used and probably wouldn't be > >> even if we moved to a multiprocess model. ??Despite the convenience, > >> multicast sockets have a number of disadvantages, primarily that > >> we only have a limited number of them so there could be collisions. > >> In addition, unicast sockets give additional flexibility to userspace > >> by allowing every object to potentially have a different socket > >> chosen by userspace for upcalls. ??Finally, any future optimizations > >> for upcalls to reduce copying will likely not be compatible with > >> multicast anyways so disallowing it potentially simplifies things. > >> > >> We also never unregistered the multicast groups registered for upcalls > >> and leaked them on module unload. ??As a side effect, this solves that > >> problem. > >> > >> Signed-off-by: Jesse Gross <[email protected]> > > > > This seems reasonable, thank you. > > > > The comments in datapath-protocol.h don't mention pid == 0 but maybe > > they should. > > > > We could optionally skip segmenting GSO skbs, saving some CPU, in the > > pid == 0 case. > > > > In dpif_linux_recv_set_mask(), I would rate-limit the new log messages. > > These are all good points. I made these changes plus avoiding > querying the actions and also a bug fix where we didn't actually set > the flow key. Here's the incremental:
Acked-by: Ben Pfaff <[email protected]> _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
