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. Thanks, Ben. _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
