Looks good, thanks.

Ethan

On Fri, Mar 2, 2012 at 13:26, Ben Pfaff <[email protected]> wrote:
> The reconfiguration code only deleted unwanted ports for bridges that had
> been created in previous (re)configurations.  In fact, we should run this
> step even for bridges that are newly added, e.g. to delete ports that
> were added by a previous run of ovs-vswitchd and deleted from the database
> between runs.
>
> Before this commit, the following left "int" in datapath br0.  After this
> commit, "int" is properly deleted:
>
> 1. With ovs-vswitchd running:
>      # ovs-vsctl add-br br0
>      # ovs-vsctl add-port br0 int -- set interface int type=internal
> 2. Kill ovs-vswitchd, then:
>      # ovs-vsctl --no-wait -- del-port br0 int
> 3. Restart ovs-vswitchd.
>
> Bug #9957.
> Reported-by: Hiroshi Tanaka <[email protected]>
> Signed-off-by: Ben Pfaff <[email protected]>
> ---
>  AUTHORS           |    1 +
>  vswitchd/bridge.c |    8 ++++++--
>  2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/AUTHORS b/AUTHORS
> index 6a83514..1f44c36 100644
> --- a/AUTHORS
> +++ b/AUTHORS
> @@ -92,6 +92,7 @@ Gregor Schaffrath       [email protected]
>  Hassan Khan             [email protected]
>  Hector Oron             [email protected]
>  Henrik Amren            [email protected]
> +Hiroshi Tanaka          [email protected]
>  Jacob Cherkas           [email protected]
>  Jad Naous               [email protected]
>  Jamal Hadi Salim        [email protected]
> diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c
> index 6293dad..7c3e4ba 100644
> --- a/vswitchd/bridge.c
> +++ b/vswitchd/bridge.c
> @@ -438,8 +438,12 @@ bridge_reconfigure(const struct ovsrec_open_vswitch 
> *ovs_cfg)
>      * has at least one iface, every "struct iface" has a valid ofp_port and
>      * netdev. */
>     HMAP_FOR_EACH_SAFE (br, next, node, &all_bridges) {
> -        if (!br->ofproto && !bridge_add_ofprotos(br)) {
> -            bridge_destroy(br);
> +        if (!br->ofproto) {
> +            if (bridge_add_ofprotos(br)) {
> +                bridge_del_ofproto_ports(br);
> +            } else {
> +                bridge_destroy(br);
> +            }
>         }
>     }
>     HMAP_FOR_EACH (br, node, &all_bridges) {
> --
> 1.7.2.5
>
> _______________________________________________
> dev mailing list
> [email protected]
> http://openvswitch.org/mailman/listinfo/dev
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev

Reply via email to