Re: [PATCH 1/9] PCI: sysfs: Export available PCIe bandwidth

From: Alex G.
Date: Wed Sep 05 2018 - 09:52:37 EST


On 09/05/2018 02:26 AM, Stephen Hemminger wrote:
On Mon, 3 Sep 2018 13:02:28 -0500
Alexandru Gagniuc <mr.nuke.me@xxxxxxxxx> wrote:

For certain bandwidth-critical devices (e.g. multi-port network cards)
it is useful to know the available bandwidth to the root complex. This
information is only available via the system log, which doesn't
account for link degradation after probing.

With a sysfs attribute, we can computes the bandwidth on-demand, and
will detect degraded links.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@xxxxxxxxx>

In other places (like /sys/class/net/eth0/speed) only the raw value is printed
without suffix. The general convention in sysfs is that it should be one value
per file and in more raw format. So why not just print it in bits/sec without
suffix?

I wanted to be consistent with other PCIe exports that use units.For example:

/sys/devices/pci0000:3a/0000:3a:00.0/0000:3b:00.0/0000:3c:05.0/max_link_speed:8 GT/s
/sys/devices/pci0000:3a/0000:3a:00.0/0000:3b:00.0/0000:3c:05.0/current_link_speed:2.5 GT/s
/sys/bus/pci/slots/182/cur_bus_speed:2.5 GT/s PCIe
/sys/bus/pci/slots/182/max_bus_speed:8.0 GT/s PCIe