Thanks, I added the signoffs and pushed these.
On Thu, Dec 15, 2011 at 12:53:25PM -0800, Ethan Jackson wrote: > You need a Signed-off-by. Otherwise looks good. > > Ethan > > On Thu, Dec 15, 2011 at 11:49, Ben Pfaff <b...@nicira.com> wrote: > > On Thu, Dec 15, 2011 at 09:35:14AM -0800, Ben Pfaff wrote: > >> I think I'm going to try to write some unit tests for this before I > >> push it. > > > > I wrote some, but the unit test revealed a bug in the "dummy" dpif. > > Please review this, and then I'll push both patches: > > > > --8<--------------------------cut here-------------------------->8-- > > > > From: Ben Pfaff <b...@nicira.com> > > Date: Thu, 15 Dec 2011 11:45:08 -0800 > > Subject: [PATCH] dpif-netdev: Correctly report types of dummy netdevs. > > > > When dpif-netdev is in use as a "dummy" datapath, the devices that are > > added to it have type "dummy", but the dpif methods that report the types > > of ports reported that they had type "system". ?This meant that every time > > the bridge code reconfigured, it would see that the ports had the wrong > > types and delete and re-add them, which had other undesirable effects such > > as flushing the entire MAC learning table whenever ovs-vsctl changed the > > configuration. > > --- > > ?lib/dpif-netdev.c | ? ?6 ++++-- > > ?1 files changed, 4 insertions(+), 2 deletions(-) > > > > diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c > > index eb10134..2c416e3 100644 > > --- a/lib/dpif-netdev.c > > +++ b/lib/dpif-netdev.c > > @@ -458,7 +458,8 @@ answer_port_query(const struct dp_netdev_port *port, > > ? ? ? ? ? ? ? ? ? struct dpif_port *dpif_port) > > ?{ > > ? ? dpif_port->name = xstrdup(netdev_get_name(port->netdev)); > > - ? ?dpif_port->type = xstrdup(port->internal ? "internal" : "system"); > > + ? ?dpif_port->type = xstrdup(port->internal ? "internal" > > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?: netdev_get_type(port->netdev)); > > ? ? dpif_port->port_no = port->port_no; > > ?} > > > > @@ -550,7 +551,8 @@ dpif_netdev_port_dump_next(const struct dpif *dpif, > > void *state_, > > ? ? ? ? ? ? free(state->name); > > ? ? ? ? ? ? state->name = xstrdup(netdev_get_name(port->netdev)); > > ? ? ? ? ? ? dpif_port->name = state->name; > > - ? ? ? ? ? ?dpif_port->type = port->internal ? "internal" : "system"; > > + ? ? ? ? ? ?dpif_port->type = (char *) (port->internal ? "internal" > > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?: netdev_get_type(port->netdev)); > > ? ? ? ? ? ? dpif_port->port_no = port->port_no; > > ? ? ? ? ? ? state->port_no = port_no + 1; > > ? ? ? ? ? ? return 0; > > -- > > 1.7.4.4 > > _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev