Subject: Re: [PATCH] net-sysfs: allow changing sysfs carrier when interface is down

From: Stephen Hemminger <[email-masked]>
Date: Thu, 2 Jun 2022 10:56:54 -0700

On Thu, 2 Jun 2022 17:15:13 +0000
Joakim Tjernlund <[email-masked]> wrote:

> On Thu, 2022-06-02 at 09:57 -0700, Jakub Kicinski wrote:
> > On Thu, 2 Jun 2022 16:26:18 +0000 Joakim Tjernlund wrote:  
> > > On Thu, 2022-06-02 at 08:56 -0700, Stephen Hemminger wrote:  
> > > > > Sure, our HW has config/state changes that makes it impossible for net driver
> > > > > to touch and registers or TX pkgs(can result in System Error exception in worst case.  
> > 
> > What is "our HW", what kernel driver does it use and why can't the
> > kernel driver take care of making sure the device is not accessed
> > when it'd crash the system?  
> 
> It is a custom asic with some homegrown controller. The full config path is too complex for kernel too
> know and depends on user input. The cashing/TX TMO part was not part of the design plans and
> I have been down this route with the HW designers without success.

Changing upstream code to support out of tree code?
The risk of breaking current users for something that no one else uses
is a bad idea.

> >   
> > > Maybe so but it seems to me that this limitation was put in place without much thought.  
> > 
> > Don't make unnecessary disparaging statements about someone else's work.
> > Whoever that person was.  
> 
> That was not meant the way you read it, sorry for being unclear.
> The commit from 2012 simply says:
> net: allow to change carrier via sysfs
>     
>     Make carrier writable
> 

Setting carrier from userspace was added to support VPN's etc;
in general it was not meant as hardware workaround.

Often using operstate is better with complex hardware did you look at that?