[ovs-dev] [PATCH] ovs-appctl: allow ofproto/trace to take mega flow input
Andy Zhou
azhou at nicira.com
Fri Jun 28 22:20:49 UTC 2013
ofproto/trace command was not updated to take mega flow input. Only
information provided in the key fields are used for tracing.
Signed-off-by: Andy Zhou <azhou at nicira.com>
---
ofproto/ofproto-dpif.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c
index 4293824..420bfde 100644
--- a/ofproto/ofproto-dpif.c
+++ b/ofproto/ofproto-dpif.c
@@ -5911,7 +5911,7 @@ ofproto_unixctl_trace(struct unixctl_conn *conn, int argc, const char *argv[],
{
const struct dpif_backer *backer;
struct ofproto_dpif *ofproto;
- struct ofpbuf odp_key;
+ struct ofpbuf odp_key, odp_mask;
struct ofpbuf *packet;
struct ds result;
struct flow flow;
@@ -5921,6 +5921,7 @@ ofproto_unixctl_trace(struct unixctl_conn *conn, int argc, const char *argv[],
backer = NULL;
ds_init(&result);
ofpbuf_init(&odp_key, 0);
+ ofpbuf_init(&odp_mask, 0);
/* Handle "-generate" or a hex string as the last argument. */
if (!strcmp(argv[argc - 1], "-generate")) {
@@ -5941,7 +5942,7 @@ ofproto_unixctl_trace(struct unixctl_conn *conn, int argc, const char *argv[],
* bridge is specified. If function odp_flow_key_from_string()
* returns 0, the flow is a odp_flow. If function
* parse_ofp_exact_flow() returns 0, the flow is a br_flow. */
- if (!odp_flow_from_string(argv[argc - 1], NULL, &odp_key, NULL)) {
+ if (!odp_flow_from_string(argv[argc - 1], NULL, &odp_key, &odp_mask)) {
/* If the odp_flow is the second argument,
* the datapath name is the first argument. */
if (argc == 3) {
@@ -6021,6 +6022,7 @@ exit:
ds_destroy(&result);
ofpbuf_delete(packet);
ofpbuf_uninit(&odp_key);
+ ofpbuf_uninit(&odp_mask);
}
void
--
1.7.9.5
More information about the dev
mailing list