On Tue, Aug 29, 2017 at 08:25:23AM +0200, Jiri Pirko wrote: > Mon, Aug 28, 2017 at 10:08:34PM CEST, and...@lunn.ch wrote: > >> I see this overlaps a lot with DPIPE. Why won't you use that to expose > >> your hw state? > > > >We took a look at dpipe and i talked to you about using it for this > >sort of thing at netconf/netdev. But dpipe has issues displaying the > >sort of information we have. I never figured out how to do two > >dimensional tables. The output of the dpipe command is pretty > >unreadable. A lot of the information being dumped here is not about > >the data pipe, etc. > > So improve it. No problem. Also, we extend it to support what you neede.
Will i did try to do this back in March. And i failed. Lets start with stats. Vivien gives an example on the cover letter: # pr -mt switch0/port{5,6}/stats in_good_octets : 0 in_good_octets : 13824 in_bad_octets : 0 in_bad_octets : 0 in_unicast : 0 in_unicast : 0 in_broadcasts : 0 in_broadcasts : 216 in_multicasts : 0 in_multicasts : 0 in_pause : 0 in_pause : 0 in_undersize : 0 in_undersize : 0 This is what i tried to implement using dpipe. It is a simple two dimensional table. First column is a string, second a u64. In debugfs we have such a table per port. That fits with the hierarchy that each port is a directory in debugfs. But it could also be implemented as one table with N+1 columns, for N switch ports. How about you, or one of your team, implement that. It should be able to use the dsa_loop driver, which is a simple dummy switch. But it does have statistics counters for all ports. Florian or I can help you get it running if needed. This branch contains some of the basic plumbing code from my previous attempt: https://github.com/lunn/linux.git v4.11-rc4-net-next-dpipe Andrew