[ovs-dev] [PATCH] ofproto: add support of OFPR_ACTION_SET as packet-in reason for OF1.4+

Ben Pfaff blp at nicira.com
Tue Feb 3 23:39:07 UTC 2015


On Mon, Feb 02, 2015 at 04:18:19PM -0800, Shu Shen wrote:
> This patch adds support for OFPR_ACTION_SET as the packet-in reason when
> a Packet-In message is triggered by an output action within an
> action-set. By default reason code OFPR_ACTION_SET is enabled for async
> messages when Openflow 1.4+ is used. A test case is included.
> 
> Signed-off-by: Shu Shen <shu.shen at radisys.com>

Thanks for the contribution.

I think that this will report OFPR_ACTION_SET in the case where the
action set contains an output action then an "apply_actions" sends a
packet to the controller.  That is, with a flow table something like
this:

        table=0, actions=write_actions(controller),goto_table:1
        table=1, actions=controller

I think that both "controller" actions will use OFPR_ACTION_SET.

This needs {} around each of the conditional statements (see
CodingStyle.md):
> +	{
> +	    enum ofp_packet_in_reason reason = OFPR_ACTION;
> +	    if (ctx->in_group)
> +		    reason = OFPR_GROUP;
> +            else if (OFPP_UNSET != ctx->xin->flow.actset_output)
> +                    reason = OFPR_ACTION_SET;
> +	    execute_controller_action(ctx, max_len, reason, 0);
> +	}

Thanks,

Ben.



More information about the dev mailing list