All of lore.kernel.org
 help / color / mirror / Atom feed
From: Petr Machata <petrm@mellanox.com>
To: Amit Cohen <amitc@mellanox.com>
Cc: Andrew Lunn <andrew@lunn.ch>, mlxsw <mlxsw@mellanox.com>,
	"netdev\@vger.kernel.org" <netdev@vger.kernel.org>,
	"o.rempel\@pengutronix.de" <o.rempel@pengutronix.de>
Subject: Re: Link down reasons
Date: Thu, 28 May 2020 11:12:36 +0200	[thread overview]
Message-ID: <87zh9stocb.fsf@mellanox.com> (raw)
In-Reply-To: <AM0PR0502MB38267B345D7829A00790285DD78E0@AM0PR0502MB3826.eurprd05.prod.outlook.com>


Amit Cohen <amitc@mellanox.com> writes:

> Andrew Lunn <andrew@lunn.ch> writes:
>
>>On Wed, May 27, 2020 at 03:41:22PM +0000, Amit Cohen wrote:
>>> Hi Andrew,
>>>
>>> We are planning to send a set that exposes link-down reason in ethtool.
>>>
>>> It seems that the ability of your set “Ethernet cable test support”
>>> can be integrated with link-down reason.
>>>
>>>
>>>
>>> The idea is to expose reason and subreason (if there is):
>>>
>>> $ ethtool ethX
>>>
>>> …
>>>
>>> Link detected: no (No cable) // No sub reason
>>>
>>>
>>>
>>> $ ethtool ethY
>>>
>>> Link detected: no (Autoneg failure, No partner detected)
>>>
>>>
>>>
>>> Currently we have reason “cable issue” and subreasons “unsupported
>>> cable” and “shorted cable”.
>>>
>>> The mechanism of cable test can be integrated and allow us report “cable issue”
>>> reason and “shorted cable” subreason.
>>
>>I don't really see them being combinable. First off, your API seems
>>too limiting. How do you say which pair is broken, or at what
>>distance? What about open cable, as opposed to shorted cable?

Under the proposed API, open cable and shorted cable would be two
different subreasons of "cable issue" reason.

>>So i would suggest:
>>
>>Link detected: no (cable issue)
>>
>>And then recommend the user uses ethtool --cable-test to get all the
>>details, and you have a much more flexible API to provide as much or
>>as little information as you have.

Yeah, the API that we are thinking of makes this possible.

Andrew, pardon my ignorance in these matters, can a PHY driver in
general determine that the issue is with the cable, even without running
the fairly expensive cable test? I.e. is it reasonable to expect that
the driver can tell us, yeah, the cable is baked (=> cable issue), but
please run the cable test to learn the details?

Ideally we would just use the cable test when trying to determine the
link-down reason, but the peculiar reporting mechanism and the fact that
it is a lengthy operation prevent this.

> Link-down reason has to consider cable-test or not? In order to report
> "cable issue", we assume that the driver implemented link-down reason
> in addition to cable-test?

Note that the "driver" here can refer both to a MAC driver as well as a
PHY driver. Ethtool can in principle do a cascade of callbacks to
different subsystems when trying to figure out why the link is down.

> I'm asking about PHY driver for example that implemented cable-test
> and not link-down reason, so according to cable-test we should report
> "cable issue" as a link-down reason or do not expose reason here?

  reply	other threads:[~2020-05-28  9:12 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <AM0PR0502MB38261D4F4F7A3BB5E0FDCD10D7B10@AM0PR0502MB3826.eurprd05.prod.outlook.com>
2020-05-27 21:38 ` Link down reasons Andrew Lunn
2020-05-28  5:56   ` Amit Cohen
2020-05-28  9:12     ` Petr Machata [this message]
2020-05-28 15:40       ` Andrew Lunn
2020-05-28 16:54         ` Petr Machata
2020-05-28 17:17           ` Michal Kubecek
2020-05-28 18:37           ` Andrew Lunn
2020-05-29  9:03             ` Petr Machata
2020-05-28  8:40 ` Oleksij Rempel
2020-05-28  9:22   ` Petr Machata
2020-05-28 10:28     ` Oleksij Rempel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87zh9stocb.fsf@mellanox.com \
    --to=petrm@mellanox.com \
    --cc=amitc@mellanox.com \
    --cc=andrew@lunn.ch \
    --cc=mlxsw@mellanox.com \
    --cc=netdev@vger.kernel.org \
    --cc=o.rempel@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.