[ovs-dev] [bug9964 3/5] ofproto: connmgr_send_packet_in() doesn't need buffer_id and total_len.
Ethan Jackson
ethan at nicira.com
Wed Mar 14 21:43:09 UTC 2012
Looks good thank you.
Ethan
On Mon, Mar 12, 2012 at 14:38, Ben Pfaff <blp at nicira.com> wrote:
> Trying to add a new caller for connmgr_send_packet_in(), I wasn't sure
> what to put in these members. Investigating, I saw that the function
> didn't really need them, so this commit clears that up.
>
> Signed-off-by: Ben Pfaff <blp at nicira.com>
> ---
> ofproto/connmgr.c | 6 +++++-
> ofproto/ofproto-dpif.c | 4 ----
> 2 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/ofproto/connmgr.c b/ofproto/connmgr.c
> index 4343622..1f5fbed 100644
> --- a/ofproto/connmgr.c
> +++ b/ofproto/connmgr.c
> @@ -1278,7 +1278,9 @@ connmgr_send_flow_removed(struct connmgr *mgr,
> }
>
> /* Given 'pin', sends an OFPT_PACKET_IN message to each OpenFlow controller as
> - * necessary according to their individual configurations. */
> + * necessary according to their individual configurations.
> + *
> + * The caller doesn't need to fill in pin->buffer_id or pin->total_len. */
> void
> connmgr_send_packet_in(struct connmgr *mgr,
> const struct ofputil_packet_in *pin)
> @@ -1310,6 +1312,8 @@ schedule_packet_in(struct ofconn *ofconn, struct ofputil_packet_in pin)
> {
> struct connmgr *mgr = ofconn->connmgr;
>
> + pin.total_len = pin.packet_len;
> +
> /* Get OpenFlow buffer_id. */
> if (pin.reason == OFPR_ACTION) {
> pin.buffer_id = UINT32_MAX;
> diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c
> index 983fbd0..5a26bd1 100644
> --- a/ofproto/ofproto-dpif.c
> +++ b/ofproto/ofproto-dpif.c
> @@ -2471,14 +2471,12 @@ send_packet_in_miss(struct ofproto_dpif *ofproto, const struct ofpbuf *packet,
>
> pin.packet = packet->data;
> pin.packet_len = packet->size;
> - pin.total_len = packet->size;
> pin.reason = OFPR_NO_MATCH;
> pin.controller_id = 0;
>
> pin.table_id = 0;
> pin.cookie = 0;
>
> - pin.buffer_id = 0; /* not yet known */
> pin.send_len = 0; /* not used for flow table misses */
>
> flow_get_metadata(flow, &pin.fmd);
> @@ -4535,9 +4533,7 @@ execute_controller_action(struct action_xlate_ctx *ctx, int len,
> pin.table_id = ctx->table_id;
> pin.cookie = ctx->rule ? ctx->rule->up.flow_cookie : 0;
>
> - pin.buffer_id = 0;
> pin.send_len = len;
> - pin.total_len = packet->size;
> flow_get_metadata(&ctx->flow, &pin.fmd);
>
> connmgr_send_packet_in(ctx->ofproto->up.connmgr, &pin);
> --
> 1.7.2.5
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
More information about the dev
mailing list