Support for FEC encoding control

Bug #1749384 reported by Simon Horman
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ethtool (Ubuntu)
New
Undecided
Unassigned

Bug Description

This is a request to backport the following upstream commit which is present in v4.15.

commit 8db75d1e4001ac4cdfc73d5bedd0ec6d58a3d617
Author: Dustin Byford <email address hidden>
Date: Mon Dec 18 14:57:41 2017 -0800

    ethtool: Support for FEC encoding control

    As FEC settings and different FEC modes are mandatory
    and configurable across various interfaces of 25G/50G/100G/40G,
    the lack of FEC encoding control and reporting today is a source
    for interoperability issues for many vendors

    set-fec/show-fec option(s) are designed to provide control and report
    the FEC encoding on the link.

    $ethtool --set-fec swp1 encoding [off | RS | BaseR | auto]

    Encoding: Types of encoding
    Off : Turning off FEC
    RS : Force RS-FEC encoding
    BaseR : Force BaseR encoding
    Auto : Default FEC settings for drivers, and would represent
              asking the hardware to essentially go into a best effort mode.

    Here are a few examples of what we would expect if encoding=auto:
    - if autoneg is on, we are expecting FEC to be negotiated as on or off
      as long as protocol supports it
    - if the hardware is capable of detecting the FEC encoding on it's
      receiver it will reconfigure its encoder to match
    - in absence of the above, the configuration would be set to IEEE
      defaults.

    >From our understanding, this is essentially what most hardware/driver
    combinations are doing today in the absence of a way for users to
    control the behavior.

    $ethtool --show-fec swp1
    FEC parameters for swp1:
    FEC encodings: RS

    ethtool devname output:
    $ethtool swp1
    Settings for swp1:
    root@hpe-7712-03:~# ethtool swp18
    Settings for swp18:
        Supported ports: [ FIBRE ]
        Supported link modes: 40000baseCR4/Full
                                40000baseSR4/Full
                                40000baseLR4/Full
                                100000baseSR4/Full
                                100000baseCR4/Full
                                100000baseLR4_ER4/Full
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Supported FEC modes: [RS | BaseR | None | Not reported]
        Advertised link modes: Not reported
        Advertised pause frame use: No
        Advertised auto-negotiation: No
        Advertised FEC modes: [RS | BaseR | None | Not reported]
        Speed: 100000Mb/s
        Duplex: Full
        Port: FIBRE
        PHYAD: 106
        Transceiver: internal
        Auto-negotiation: off
        Link detected: yes

    Signed-off-by: Vidya Sagar Ravipati <email address hidden>
    Signed-off-by: Dustin Byford <email address hidden>
    [code style + man page edits + commit message update]
    Signed-off-by: Dirk van der Merwe <email address hidden>
    Signed-off-by: John W. Linville <email address hidden>

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

This was made available in Ubuntu Bionic (ethtool 4.15 along kernel 4.15).

Even thou there are HWE kernels that bring the newer Kernels to LTS releases AFAIK there are no plans to also backport ethtool changes along that to ethtool (which lives in the kernel teams scope now).

Subscribing Kernel team for them to decide.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.