Acked-by: Jarno Rajahalme <jrajaha...@nicira.com>

  Jarno

On Jan 13, 2015, at 4:47 PM, Ben Pfaff <b...@nicira.com> wrote:

> Conjunction actions shouldn't normally get executed, so it's worth
> logging if it happens.
> 
> Suggested-by: Jarno Rajahalme <jrajaha...@nicira.com>
> Signed-off-by: Ben Pfaff <b...@nicira.com>
> ---
> ofproto/ofproto-dpif-xlate.c |    9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/ofproto/ofproto-dpif-xlate.c b/ofproto/ofproto-dpif-xlate.c
> index 2efcbb9..0786513 100644
> --- a/ofproto/ofproto-dpif-xlate.c
> +++ b/ofproto/ofproto-dpif-xlate.c
> @@ -4056,8 +4056,15 @@ do_xlate_actions(const struct ofpact *ofpacts, size_t 
> ofpacts_len,
>             xlate_learn_action(ctx, ofpact_get_LEARN(a));
>             break;
> 
> -        case OFPACT_CONJUNCTION:
> +        case OFPACT_CONJUNCTION: {
> +            /* A flow with a "conjunction" action represents part of a 
> special
> +             * kind of "set membership match".  Such a flow should not 
> actually
> +             * get executed, but it could via, say, a "packet-out", even 
> though
> +             * that wouldn't be useful.  Log it to help debugging. */
> +            static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 1);
> +            VLOG_INFO_RL(&rl, "executing no-op conjunction action");
>             break;
> +        }
> 
>         case OFPACT_EXIT:
>             ctx->exit = true;
> -- 
> 1.7.10.4
> 

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to