aboutsummaryrefslogtreecommitdiff
path: root/FAQ.md
diff options
context:
space:
mode:
authorBen Pfaff <blp@nicira.com>2015-03-13 13:02:52 -0700
committerBen Pfaff <blp@nicira.com>2015-03-13 13:03:24 -0700
commitf58df86078af10aba97484671db8739769df29f1 (patch)
treea62cb43df96e149af12c539b4de63ae95f840fd9 /FAQ.md
parentce34e37ffe884a8bb353a532dd241726cecfe1f0 (diff)
FAQ.md: Add a few more details on how to support a new field.
Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Thomas Graf <tgraf@noironetworks.com>
Diffstat (limited to 'FAQ.md')
-rw-r--r--FAQ.md24
1 files changed, 19 insertions, 5 deletions
diff --git a/FAQ.md b/FAQ.md
index b2fc646ee..b112dfb41 100644
--- a/FAQ.md
+++ b/FAQ.md
@@ -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?