On Wed, Dec 07, 2016 at 12:51:12PM -0500, Lance Richardson wrote: > > From: "Ben Pfaff" <b...@ovn.org> > > To: "Lance Richardson" <lrich...@redhat.com> > > Cc: d...@openvswitch.org > > Sent: Wednesday, December 7, 2016 12:38:42 PM > > Subject: Re: [ovs-dev] [PATCH 4/4] [RFC] ofproto-dpif: Make ofproto/trace > > output easier to read. > > > > On Wed, Dec 07, 2016 at 12:31:24PM -0500, Lance Richardson wrote: > > > > From: "Ben Pfaff" <b...@ovn.org> > > > > To: d...@openvswitch.org > > > > Sent: Wednesday, December 7, 2016 11:36:13 AM > > > > Subject: Re: [ovs-dev] [PATCH 4/4] [RFC] ofproto-dpif: Make > > > > ofproto/trace > > > > output easier to read. > > > > > > > > On Tue, Dec 06, 2016 at 11:28:43PM -0800, Ben Pfaff wrote: > > > > > "ovs-appctl ofproto/trace" is invaluable for debugging, but as the > > > > > users of > > > > > Open vSwitch have evolved it has failed to keep up with the times. > > > > > It's > > > > > pretty easy to design OpenFlow tables and pipelines that resubmit > > > > > dozens of > > > > > times. Each resubmit causes an additional tab of indentation, so the > > > > > output wraps around, sometimes again and again, and makes the output > > > > > close > > > > > to unreadable. > > > > > > > > > > ovn-trace pioneered better formatting for tracing in OVN logical > > > > > datapaths, > > > > > mostly by not increasing indentation for tail recursion, which in > > > > > practice > > > > > gets rid of almost all indentation. > > > > > > > > > > This commit experiments with redoing ofproto/trace the same way. Try > > > > > looking at, for example, the testsuite output for test 2280 "ovn -- 3 > > > > > HVs, > > > > > 3 LRs connected via LS, source IP based routes". Without this commit, > > > > > it > > > > > indents 61 levels (488 spaces!). With this commit, it indents 1 level > > > > > (4 spaces) and it's possible to actually understand what's going on > > > > > almost > > > > > at a glance. > > > > > > > > Here's the output with this patch, followed by the output without this > > > > patch: > > > > > > > > > > Having tried to make sense of the current format before (successfully, > > > eventually, > > > but with great effort): thank you for doing this, it should make debugging > > > and > > > understanding OVN much easier. > > > > > > However, with this 4-patch series applied I'm getting test failures that I > > > don't > > > see without these patches: > > > > > > 1169: ofproto-dpif - trace (unchanged) FAILED > > > (ofproto-dpif.at:8321) > > > 1052: ofproto-dpif - fragment handling - trace FAILED > > > (ofproto-dpif.at:3799) > > > 2161: RSTP - dummy interface FAILED (rstp.at:215) > > > 2154: STP - dummy interface FAILED (stp.at:430) > > > 1082: ofproto-dpif - ofproto/trace command 1 FAILED > > > (ofproto-dpif.at:4842) > > > 1084: ofproto-dpif - ofproto/trace from dpctl output FAILED > > > (ofproto-dpif.at:5000) > > > > Yes, fixing these are on the to-do list that will need to be finished > > before it becomes non-RFC. (There may be genuine bugs, but these are > > mostly for tests that are very picky about the output format, so they > > break because the output format changed.) > > > > OK, I had somehow missed the [RFC] tag. > > FWIW, the 1052 failure was caused by the removal of this output from > trace_resubmit(): > > - } else if (rule == xin->ofproto->drop_frags_rule) { > - trace_report(xin, indentation, > - "Packets dropped because they are IP fragments and " > - "the fragment handling mode is \"drop\".");
I've got that one fixed in my local tree now. _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev