Subject: Re: [RFC PATCH net-next 1/8] ethtool: Add ability to control transceiver modules' low power mode

From: Andrew Lunn <[email-masked]>
Date: Wed, 11 Aug 2021 16:36:13 +0200

On Wed, Aug 11, 2021 at 06:03:43AM -0700, Jakub Kicinski wrote:
> On Wed, 11 Aug 2021 14:33:06 +0300 Ido Schimmel wrote:
> > # ethtool --set-module swp13 low-power on
> > 
> > $ ethtool --show-module swp13
> > Module parameters for swp13:
> > low-power true
> > 
> > # ip link set dev swp13 up
> > 
> > $ ip link show dev swp13
> > 127: swp13: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
> >     link/ether 1c:34:da:18:55:49 brd ff:ff:ff:ff:ff:ff
> > 
> > $ ip link show dev swp14
> > 128: swp14: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
> >     link/ether 1c:34:da:18:55:4d brd ff:ff:ff:ff:ff:ff
> 
> Oh, so if we set low-power true the carrier will never show up?
> I thought Andrew suggested the setting is only taken into account 
> when netdev is down.

Yes, that was my intention. If this low power mode also applies when
the interface is admin up, it sounds like a foot gun. ip link show
gives you no idea why the carrier is down, and people will assume the
cable or peer is broken. We at least need a new flag, LOWER_DISABLED
or similar to give the poor user some chance to figure out what is
going on.

To me, this setting should only apply when the link is admin down.

	Andrew