# Re: \[PATCH RESEND ethtool-next\] netlink: settings: add two link extended substates of bad signal integrity

- From: Michal Kubecek \<hidden\>
- Date: 2021-08-24 17:39:26 
- List: netdev
- Page: https://ratatoskr.run/netdev/2021/08/11210053
- Thread: https://ratatoskr.run/netdev/2021/08/11209995/t.md

```text
On Tue, Aug 24, 2021 at 10:14:51AM +0800, Guangbin Huang wrote:
> Add two link extended substates of bad signal integrity available in the
> kernel.
> 
> ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_REFERENCE_CLOCK_LOST means the input
> external clock signal for SerDes is too weak or lost.
> 
> ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_ALOS means the received signal for
> SerDes is too weak because analog loss of signal.
> 
> Signed-off-by: Guangbin Huang <redacted>
> ---
>  netlink/settings.c   | 4 ++++
>  uapi/linux/ethtool.h | 2 ++
>  2 files changed, 6 insertions(+)
> 
> diff --git a/netlink/settings.c b/netlink/settings.c
> index e47a38f3058f..6d10a0703861 100644
> --- a/netlink/settings.c
> +++ b/netlink/settings.c
> @@ -639,6 +639,10 @@ static const char *const names_bad_signal_integrity_link_ext_substate[] = {
>  		"Large number of physical errors",
>  	[ETHTOOL_LINK_EXT_SUBSTATE_BSI_UNSUPPORTED_RATE]		=
>  		"Unsupported rate",
> +	[ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_REFERENCE_CLOCK_LOST]	=
> +		"Serdes reference clock lost",
> +	[ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_ALOS]			=
> +		"Serdes ALOS",
>  };
>  
>  static const char *const names_cable_issue_link_ext_substate[] = {
> diff --git a/uapi/linux/ethtool.h b/uapi/linux/ethtool.h
> index c6ec1111ffa3..bd1f09b23cf5 100644
> --- a/uapi/linux/ethtool.h
> +++ b/uapi/linux/ethtool.h
> @@ -637,6 +637,8 @@ enum ethtool_link_ext_substate_link_logical_mismatch {
>  enum ethtool_link_ext_substate_bad_signal_integrity {
>  	ETHTOOL_LINK_EXT_SUBSTATE_BSI_LARGE_NUMBER_OF_PHYSICAL_ERRORS = 1,
>  	ETHTOOL_LINK_EXT_SUBSTATE_BSI_UNSUPPORTED_RATE,
> +	ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_REFERENCE_CLOCK_LOST,
> +	ETHTOOL_LINK_EXT_SUBSTATE_BSI_SERDES_ALOS,
>  };
>  
>  /* More information in addition to ETHTOOL_LINK_EXT_STATE_CABLE_ISSUE. */

Please split the uapi header update into a separate patch and update all
headers to a specific commit (preferrably current net-next head) as
described in the last section of

  https://www.kernel.org/pub/software/network/ethtool/devel.html

The patch looks good otherwise.

Michal
```

## Attachments

- [signature.asc](https://ratatoskr.run/netdev/2021/08/11210053/attachment/0) (application/pgp-signature, 488 bytes)
