[ovs-dev] [PATCH] ofproto: Send OFPT_PORT_STATUS messages to primary slave controllers.

Justin Pettit jpettit at nicira.com
Wed Nov 24 21:14:24 UTC 2010


Looks good.

--Justin


On Nov 24, 2010, at 12:51 PM, Ben Pfaff wrote:

> Requested-by: Jeremy Stribling <strib at nicira.com>
> CC: Jeremy Stribling <strib at nicira.com>
> ---
> include/openflow/nicira-ext.h |    4 ++--
> ofproto/ofproto.c             |    5 ++++-
> 2 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/include/openflow/nicira-ext.h b/include/openflow/nicira-ext.h
> index d87915e..1a59d3b 100644
> --- a/include/openflow/nicira-ext.h
> +++ b/include/openflow/nicira-ext.h
> @@ -205,8 +205,8 @@ OFP_ASSERT(sizeof(struct nxt_tun_id_cookie) == 24);
>  *      OpenFlow features.  In particular attempts to modify the flow table
>  *      will be rejected with an OFPBRC_EPERM error.
>  *
> - *      Slave controllers also do not receive asynchronous messages
> - *      (OFPT_PACKET_IN, OFPT_FLOW_REMOVED, OFPT_PORT_STATUS).
> + *      Slave controllers do not receive OFPT_PACKET_IN or OFPT_FLOW_REMOVED
> + *      messages, but they do receive OFPT_PORT_STATUS messages.
>  */
> struct nx_role_request {
>     struct nicira_header nxh;
> diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c
> index c2b38b2..9a4702e 100644
> --- a/ofproto/ofproto.c
> +++ b/ofproto/ofproto.c
> @@ -1515,7 +1515,10 @@ send_port_status(struct ofproto *p, const struct ofport *ofport,
>         struct ofp_port_status *ops;
>         struct ofpbuf *b;
> 
> -        if (!ofconn_receives_async_msgs(ofconn)) {
> +        /* Primary controllers, even slaves, should always get port status
> +           updates.  Otherwise obey ofconn_receives_async_msgs(). */
> +        if (ofconn->type != OFCONN_PRIMARY
> +            && !ofconn_receives_async_msgs(ofconn)) {
>             continue;
>         }
> 
> -- 
> 1.7.1
> 
> 
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev_openvswitch.org





More information about the dev mailing list