Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1722586

Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface

From Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Newsgroups linux.kernel
Subject Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface
Date 2017-08-29 18:10 +0200
Message-ID <ujRfr-4Ns-7@gated-at.bofh.it> (permalink)
References <ujxTr-16C-5@gated-at.bofh.it> <ujGtI-6nZ-5@gated-at.bofh.it> <ujIca-7vX-25@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Hi David, Jiri,

Jiri Pirko <jiri@resnulli.us> writes:

> Tue, Aug 29, 2017 at 06:38:37AM CEST, davem@davemloft.net wrote:
>>From: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
>>Date: Mon, 28 Aug 2017 15:17:38 -0400
>>
>>> This patch series adds a generic debugfs interface for the DSA
>>> framework, so that all switch devices benefit from it, e.g. Marvell,
>>> Broadcom, Microchip or any other DSA driver.
>>
>>I've been thinking this over and I agree with the feedback given that
>>debugfs really isn't appropriate for this.
>>
>>Please create a DSA device class, and hang these values under
>>appropriate sysfs device nodes that can be easily found via
>>/sys/class/dsa/ just as easily as they would be /sys/kernel/debug/dsa/
>>
>>You really intend these values to be consistent across DSA devices,
>>and you don't intend to go willy-nilly changig these exported values
>>arbitrarily over time.  That's what debugfs is for, throw-away
>>stuff.
>>
>>So please make these proper device sysfs attributes rather than
>>debugfs.
>
> As I wrote, I believe that there is a big overlap with devlink and its
> dpipe subset. I think that primary we should focus on extending whatever
> is needed for dsa there. The iface should be generic for all drivers,
> not only dsa. dsa-specific sysfs attributes should be last-resort solution,
> I believe we can avoid them.

Please note that this interface is only meant to provide a _debug_ and
_development_ interface to DSA users. It is enableable at compile time
and can be ditched anytime we want, in contrary to other interfaces
which cannot be broken or changed because they are part of the ABI.

I see sysfs as a script-friendly way to access and configure kernel
structures, so I agree with Jiri that it doesn't seem appropriate.

Extending devlink is a good option for long term, but it'll take a bit
of time to extend data structures and not duplicate stats and regs
accesses for ports which have a net device attached to it or not.

In the meantime, I didn't find anything more useful and easier to debug
a switch fabric than dumping side-by-side stats of all ports part of the
data plane, for example like this:

    # watch -n1 pr -mt {switch0/port5,switch0/port6,switch1/port5,switch1/port3}/stats

where ports 5 and 6 of both switches are DSA/CPU ports (without net
devices attached to them) and port3 is a user port. This way one can
easily see where and why packets get dropped.

We could keep this interface and simply ditch net/dsa/debugfs.c when a
convenient devlink alternative is in place.


Thanks,

        Vivien

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Vivien Didelot <vivien.didelot@savoirfairelinux.com> - 2017-08-28 21:30 +0200
  [PATCH net-next v2 10/10] net: dsa: debugfs: add port vlan Vivien Didelot <vivien.didelot@savoirfairelinux.com> - 2017-08-28 21:30 +0200
  [PATCH net-next v2 01/10] net: dsa: add debugfs interface Vivien Didelot <vivien.didelot@savoirfairelinux.com> - 2017-08-28 21:30 +0200
    Re: [PATCH net-next v2 01/10] net: dsa: add debugfs interface Florian Fainelli <f.fainelli@gmail.com> - 2017-08-28 22:00 +0200
      Re: [PATCH net-next v2 01/10] net: dsa: add debugfs interface Jiri Pirko <jiri@resnulli.us> - 2017-08-28 22:10 +0200
    Re: [PATCH net-next v2 01/10] net: dsa: add debugfs interface Jiri Pirko <jiri@resnulli.us> - 2017-08-28 22:00 +0200
    Re: [PATCH net-next v2 01/10] net: dsa: add debugfs interface Andrew Lunn <andrew@lunn.ch> - 2017-08-28 22:20 +0200
    Re: [PATCH net-next v2 01/10] net: dsa: add debugfs interface Greg KH <gregkh@linuxfoundation.org> - 2017-09-08 07:20 +0200
      Re: [PATCH net-next v2 01/10] net: dsa: add debugfs interface Vivien Didelot <vivien.didelot@savoirfairelinux.com> - 2017-09-08 16:10 +0200
  Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Jiri Pirko <jiri@resnulli.us> - 2017-08-28 22:00 +0200
    Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Andrew Lunn <andrew@lunn.ch> - 2017-08-28 22:10 +0200
      Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Jiri Pirko <jiri@resnulli.us> - 2017-08-29 08:30 +0200
        Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Andrew Lunn <andrew@lunn.ch> - 2017-08-29 15:00 +0200
          Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Florian Fainelli <f.fainelli@gmail.com> - 2017-08-29 21:20 +0200
            Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Andrew Lunn <andrew@lunn.ch> - 2017-08-29 22:30 +0200
          Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Jiri Pirko <jiri@resnulli.us> - 2017-08-30 09:50 +0200
  Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs  interface David Miller <davem@davemloft.net> - 2017-08-29 06:40 +0200
    Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Jiri Pirko <jiri@resnulli.us> - 2017-08-29 08:30 +0200
      Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Vivien Didelot <vivien.didelot@savoirfairelinux.com> - 2017-08-29 18:10 +0200
        Re: [PATCH net-next v2 00/10] net: dsa: add generic debugfs interface Jiri Pirko <jiri@resnulli.us> - 2017-08-30 09:50 +0200

csiph-web