On Thu, 9 Jul 2020 16:18:13 +0300 Ido Schimmel wrote:
> From: Ido Schimmel <[email protected]>
>
> Danielle says:
>
> Currently, user space has no way of knowing if a port can be split and
> into how many ports. Among other things, this makes it impossible to
> write generic tests for port split functionality.
>
> Therefore, this set exposes two new devlink port attributes to user
> space: Number of lanes and whether the port can be split or not.
>
> Patch set overview:
>
> Patches #1-#4 cleanup 'struct devlink_port_attrs' and reduce the number
> of parameters passed between drivers and devlink via
> devlink_port_attrs_set()
>
> Patch #5 adds devlink port lanes attributes
>
> Patches #6-#7 add devlink port splittable attribute
>
> Patch #8 exploits the fact that devlink is now aware of port's number of
> lanes and whether the port can be split or not and moves some checks
> from drivers to devlink
>
> Patch #9 adds a port split test
>
> Changes since v2:
> * Remove some local variables from patch #3
> * Reword function description in patch #5
> * Fix a bug in patch #8
> * Add a test for the splittable attribute in patch #9
>
> Changes since v1:
> * Rename 'width' attribute to 'lanes'
> * Add 'splittable' attribute
> * Move checks from drivers to devlink
FWIW I fancy my:
lanes % count != 0
from the nfp cleaner than the:
!is_power_of_2(count) || count > lanes
of mlxsw, but that's bike shedding at best, and at worst
I'm missing something ;) so:
Reviewed-by: Jakub Kicinski <[email protected]>