From: Justin Pettit Date: Wed, 12 Jun 2013 05:54:50 +0000 (-0700) Subject: ofproto-dpif: Print slow path actions in dpif/dump-megaflows. X-Git-Tag: sliver-openvswitch-1.10.90-3~6^2~126 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=8ecafa3ee424b200a35daf5a3a4c14d6f3cc2646;p=sliver-openvswitch.git ofproto-dpif: Print slow path actions in dpif/dump-megaflows. It's often helpful to see what the slow path actions actual are. Print them when "ovs-appctl dpif/dump-megaflows" is called. Signed-off-by: Justin Pettit Acked-by: Ethan Jackson --- diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c index c0f6df07e..c262e7bab 100644 --- a/ofproto/ofproto-dpif.c +++ b/ofproto/ofproto-dpif.c @@ -8583,8 +8583,19 @@ ofproto_unixctl_dpif_dump_megaflows(struct unixctl_conn *conn, ds_put_format(&ds, "n_subfacets:%zu, ", list_size(&facet->subfacets)); ds_put_format(&ds, "used:%.3fs, ", (now - facet->used) / 1000.0); ds_put_cstr(&ds, "Datapath actions: "); - format_odp_actions(&ds, facet->xout.odp_actions.data, - facet->xout.odp_actions.size); + if (facet->xout.slow) { + uint64_t slow_path_stub[128 / 8]; + const struct nlattr *actions; + size_t actions_len; + + compose_slow_path(ofproto, &facet->flow, facet->xout.slow, + slow_path_stub, sizeof slow_path_stub, + &actions, &actions_len); + format_odp_actions(&ds, actions, actions_len); + } else { + format_odp_actions(&ds, facet->xout.odp_actions.data, + facet->xout.odp_actions.size); + } ds_put_cstr(&ds, "\n"); }