Skip to content

Commit

Permalink
FAQ.md: Add a few more details on how to support a new field.
Browse files Browse the repository at this point in the history
Signed-off-by: Ben Pfaff <[email protected]>
Acked-by: Thomas Graf <[email protected]>
  • Loading branch information
blp committed Mar 13, 2015
1 parent ce34e37 commit f58df86
Showing 1 changed file with 19 additions and 5 deletions.
24 changes: 19 additions & 5 deletions FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -1748,11 +1748,25 @@ A: Add your new message to "enum ofpraw" and "enum ofptype" in

A: Add new members for your field to "struct flow" in lib/flow.h, and
add new enumerations for your new field to "enum mf_field_id" in
lib/meta-flow.h, following the existing pattern. Then recompile
and fix all of the new warnings, implementing new functionality for
the new field or header as needed. (If you configure with
--enable-Werror, as described in [INSTALL.md], then it is
impossible to miss any warnings.)
lib/meta-flow.h, following the existing pattern. Also, add support
to miniflow_extract() in lib/flow.c for extracting your new field
from a packet into struct miniflow. Then recompile and fix all of
the new warnings, implementing new functionality for the new field
or header as needed. (If you configure with --enable-Werror, as
described in [INSTALL.md], then it is impossible to miss any
warnings.)

If you want kernel datapath support for your new field, you also
need to modify the kernel module for the operating systems you are
interested in. This isn't mandatory, since fields understood only
by userspace work too (with a performance penalty), so it's
reasonable to start development without it. If you implement
kernel module support for Linux, then the Linux kernel "netdev"
mailing list is the place to submit that support first; please read
up on the Linux kernel development process separately. The Windows
datapath kernel module support, on the other hand, is maintained
within the OVS tree, so patches for that can go directly to
ovs-dev.

### Q: How do I add support for a new OpenFlow action?

Expand Down

0 comments on commit f58df86

Please sign in to comment.