netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ido Schimmel <idosch@idosch.org>
To: Andrew Lunn <andrew@lunn.ch>
Cc: netdev@vger.kernel.org, davem@davemloft.net, kuba@kernel.org,
	jiri@nvidia.com, vladyslavt@nvidia.com, moshe@nvidia.com,
	vadimp@nvidia.com, mkubecek@suse.cz, mlxsw@nvidia.com,
	Ido Schimmel <idosch@nvidia.com>
Subject: Re: [RFC PATCH net-next 0/4] ethtool: Add ability to write to transceiver module EEPROMs
Date: Mon, 28 Jun 2021 10:33:54 +0300	[thread overview]
Message-ID: <YNl7YlkYGxqsdyqA@shredder> (raw)
In-Reply-To: <YNiVWhoqyHSVa+K4@lunn.ch>

On Sun, Jun 27, 2021 at 05:12:26PM +0200, Andrew Lunn wrote:
> This API is not just about CMIS, it covers any I2C connected SFP
> device. I'm more involved in the lower end, 1G, 2.5G and 10G. Devices
> in this category seem to be very bad a following the standards. GPON
> is especially bad, and GPON manufactures don't seem to care their
> devices don't follow the standard, they assume the Customer Premises
> Equipment is going to run software to work around whatever issues
> their specific GPON has, maybe they provide driver code? The API you
> are adding would be ideal for putting that driver in user space, as a
> binary blob. That is going to make it harder for us to open up the
> many millions of CPE used in FTTH. And there are people attempting to
> do that.
> 
> If devices following CMIS really are closely following the standard
> that is great. We should provide tooling to do firmware upgrade. But
> at the same time, we don't want to aid those who go against the
> standards and do their own thing. And it sounds like in the CMIS
> world, we might have the power to encourage vendors to follow CMIS,
> "Look, firmware upgrade just works for the competitors devices, why
> should i use your device when it does not work?"
> 
> I just want to make sure we are considering the full range of devices
> this new API will cover. From little ARM systems with 1G copper and
> FTTH fibre ports through to big TOR systems with large number of 100G
> ports.  If CMIS is well support by vendors, putting the code into the
> kernel, as a loadable module, might be the better solution for the
> whole range of devices the kernel needs to support.

If the goal is to limit what user space can do, then putting all the
code in the kernel and adding an ever-growing number of restrictive user
APIs is not the only way.

Even with the proposed approach, the kernel sits in the middle between
the module and user space. As such, it can maintain an "allow list" that
only allows access to modules with a specific memory map (CMIS and
SFF-8636 for now) and only to a subset of the pages which are
standardized by the specifications.

  reply	other threads:[~2021-06-28  7:34 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-23  7:59 [RFC PATCH net-next 0/4] ethtool: Add ability to write to transceiver module EEPROMs Ido Schimmel
2021-06-23  7:59 ` [RFC PATCH net-next 1/4] ethtool: Extract module EEPROM attributes before validation Ido Schimmel
2021-06-23  7:59 ` [RFC PATCH net-next 2/4] ethtool: Split module EEPROM attributes validation to a function Ido Schimmel
2021-06-23  7:59 ` [RFC PATCH net-next 3/4] ethtool: Add ability to write to transceiver module EEPROM Ido Schimmel
2021-06-23  7:59 ` [RFC PATCH net-next 4/4] mlxsw: core: Add support for module EEPROM write by page Ido Schimmel
2021-06-23 18:44 ` [RFC PATCH net-next 0/4] ethtool: Add ability to write to transceiver module EEPROMs Andrew Lunn
2021-06-24 19:38   ` Ido Schimmel
2021-06-24 20:27     ` Andrew Lunn
2021-06-27 10:33       ` Ido Schimmel
2021-06-27 15:12         ` Andrew Lunn
2021-06-28  7:33           ` Ido Schimmel [this message]
2021-06-29 13:47             ` Andrew Lunn
2021-06-29 19:44               ` Pali Rohár
2021-06-29 20:12         ` Pali Rohár
2021-06-29 17:27     ` Jakub Kicinski

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=YNl7YlkYGxqsdyqA@shredder \
    --to=idosch@idosch.org \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=idosch@nvidia.com \
    --cc=jiri@nvidia.com \
    --cc=kuba@kernel.org \
    --cc=mkubecek@suse.cz \
    --cc=mlxsw@nvidia.com \
    --cc=moshe@nvidia.com \
    --cc=netdev@vger.kernel.org \
    --cc=vadimp@nvidia.com \
    --cc=vladyslavt@nvidia.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).