nicira-ext: Add Nicira actions NXAST_STACK_PUSH and NXAST_STACK_POP.
authorAndy Zhou <azhou@nicira.com>
Wed, 6 Mar 2013 00:27:55 +0000 (16:27 -0800)
committerBen Pfaff <blp@nicira.com>
Wed, 6 Mar 2013 21:40:28 +0000 (13:40 -0800)
commitbd85dac14ed7fa42d5804592fd4e903826d9e899
tree958da5acb0c2bfdf435846965a52d82f4155c064
parent9a9e3786b3a8065723887ab009aedb7f6d2667aa
nicira-ext: Add Nicira actions NXAST_STACK_PUSH and NXAST_STACK_POP.

The Push action takes a single parameter. Any source allowed by NXAST_REG_MOVE
is allowed to be pushed onto the stack. When the source is a bit field,
its value will be right shifted to bit zero before being pushed onto the
stack. The remaining bits will be set to zero.

The Pop action also takes a single parameter. Any destination allowed by
NXAST_REG_MOVE can be used as the destination of the action. The value, in
case of a bit field, will be taken from top of the stack, starting from
bit zero.

The stack size is not limited. The initial 8KB is statically allocated to
efficiently handle most common use cases. When more stack space is
required, the stack can grow using malloc().

Signed-off-by: Andy Zhou <azhou@nicira.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
12 files changed:
NEWS
include/openflow/nicira-ext.h
lib/nx-match.c
lib/nx-match.h
lib/ofp-actions.c
lib/ofp-actions.h
lib/ofp-parse.c
lib/ofp-util.def
ofproto/ofproto-dpif.c
tests/ofproto-dpif.at
tests/ovs-ofctl.at
utilities/ovs-ofctl.8.in