[ovs-dev] [tests+nxm-ofctl 00/42] repost of "tests" and NXM support for ovs-ofctl
Ben Pfaff
blp at nicira.com
Tue Nov 23 22:43:32 UTC 2010
The first 21 patches in this series are a repost of the patches
already posted as [tests] that have not already been reviewed
and committed. They required a little bit of fixup relative to
current "master" so I thought it would be easier to review them
this way.
The remaining 21 patches add support for NXM to ovs-ofctl and
fix a few bugs that I discovered along the way.
Ben Pfaff (42):
dpif-netdev: Simplify code by using shash for names and dropping
indexes.
dpif-netdev: Do not log error for EOPNOTSUPP return from
netdev_recv().
Add new "dummy" netdev and dpif implementations for use in unit
tests.
Make installation directories overridable at runtime.
ovs-openflowd: Add --unixctl command line option.
ovs-openflowd: Add --enable-dummy option.
ovs-openflowd: Improve usage message.
ovs-openflowd: Add ability to run without connecting to controller.
ovs-openflowd: Add "exit" unixctl command.
ofproto: Fix typo in comment.
Convert stream and vconn interfaces to use ovs_be16, ovs_be32.
unaligned: Add unaligned accessors for ovs_be<N> data.
ovs-ofctl: Simplify code by using strcasecmp() instead of
strncasecmp().
ovs-ofctl: Remove stray printf.
ovs-ofctl: Factor out common code in str_to_port_no(), do_mod_port().
ovs-ofctl: Remove now-useless "tun-cookie" command.
vconn: New function vconn_transact_noreply().
ovs-ofctl: Check that commands actually succeed.
openflow: Change ofp_phy_port's 'name' member from uint8_t[] to
char[].
openflow: Remove vestigial support for including from kernel.
tests: Add tests for ofproto code.
ofp-util: Fix interpretation of NXFW_TUN_ID bit for NXFF_OPENFLOW10.
ofp-print: Fix handling of zero-length actions.
nicira-ext: Name the enum used for flow formats, to clarify code.
classifier: New cls_rule functions for setting registers and tun_id.
ovs-ofctl: Reimplement dumping particular tables.
ovs-ofctl: Demote common log messages from INFO to DBG level.
util: Improve type-safety of OBJECT_CONTAINING.
util: Introduce ASSIGN_CONTAINER to make iteration macros easier to
read.
queue: Get rid of ovs_queue data structure.
vconn: New function vconn_transact_multiple_noreply().
pinsched: Use hmap instead of port_array.
port-array: Remove.
Refactor and centralize basic OpenFlow message decoding and
validation.
ofp-util: New functions for creating Nicira extension messages.
ofp-util: New abstractions for flow_mod, flow_stats_request.
classifier: Implement better classifier rule formatting.
ofp-parse: Add support for tun_id.
ofp-parse: Add support for registers.
ofp-print: Implement printing for OFPUTIL_NXT_FLOW_MOD.
ovs-ofctl: Add NXM support.
ovs-ofctl: Add --more option to increase OpenFlow message verbosity.
include/openflow/nicira-ext.h | 2 +-
include/openflow/openflow.h | 6 +-
lib/automake.mk | 24 +-
lib/classifier.c | 193 +++++++-
lib/classifier.h | 21 +-
lib/daemon.c | 6 +-
lib/dirs.c.in | 66 +++
lib/dirs.h | 10 +-
lib/dpif-netdev.c | 187 ++++----
lib/{dirs.h => dummy.c} | 22 +-
lib/{dirs.h => dummy.h} | 18 +-
lib/flow.c | 4 +-
lib/hmap.h | 29 +-
lib/jsonrpc.c | 22 +-
lib/learning-switch.c | 162 ++++---
lib/learning-switch.h | 8 +-
lib/list.c | 10 +-
lib/list.h | 20 +-
lib/netdev-dummy.c | 335 +++++++++++++
lib/nx-match.c | 40 +-
lib/nx-match.h | 4 +
lib/ofp-parse.c | 166 +++++---
lib/ofp-parse.h | 24 +-
lib/ofp-print.c | 854 +++++++++++++++++-----------------
lib/ofp-util.c | 1050 +++++++++++++++++++++++++++++++++++++----
lib/ofp-util.h | 132 +++++-
lib/ofpbuf.c | 15 +-
lib/ofpbuf.h | 9 +-
lib/port-array.c | 194 --------
lib/port-array.h | 96 ----
lib/queue.c | 120 -----
lib/queue.h | 44 --
lib/rconn.c | 40 +-
lib/rconn.h | 1 -
lib/stream-provider.h | 18 +-
lib/stream.c | 16 +-
lib/stream.h | 9 +-
lib/unaligned.h | 68 ++-
lib/unixctl.c | 27 +-
lib/unixctl.man | 2 +
lib/util.h | 25 +-
lib/vconn-provider.h | 18 +-
lib/vconn.c | 124 +++++-
lib/vconn.h | 12 +-
lib/vlog-modules.def | 1 +
lib/vlog.c | 4 +-
ofproto/ofproto.c | 580 ++++++++---------------
ofproto/pinsched.c | 129 ++++--
ofproto/status.c | 3 +-
ofproto/status.h | 8 +-
python/ovs/automake.mk | 10 +-
python/ovs/dirs.py | 9 +-
tests/automake.mk | 1 +
tests/ofproto.at | 57 +++
tests/ovs-ofctl.at | 98 ++++-
tests/testsuite.at | 1 +
utilities/ovs-appctl.c | 4 +-
utilities/ovs-controller.c | 15 +-
utilities/ovs-discover.c | 2 +-
utilities/ovs-ofctl.8.in | 74 +++
utilities/ovs-ofctl.c | 391 +++++++++------
utilities/ovs-openflowd.8.in | 16 +
utilities/ovs-openflowd.c | 53 ++-
utilities/ovs-vsctl.c | 2 +-
vswitchd/bridge.c | 4 +-
vswitchd/ovs-brcompatd.c | 2 +-
vswitchd/ovs-vswitchd.c | 9 +-
vswitchd/system-stats.c | 6 +-
68 files changed, 3635 insertions(+), 2097 deletions(-)
create mode 100644 lib/dirs.c.in
copy lib/{dirs.h => dummy.c} (54%)
copy lib/{dirs.h => dummy.h} (60%)
create mode 100644 lib/netdev-dummy.c
delete mode 100644 lib/port-array.c
delete mode 100644 lib/port-array.h
delete mode 100644 lib/queue.c
delete mode 100644 lib/queue.h
create mode 100644 tests/ofproto.at
More information about the dev
mailing list