[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAOkoqZkCkyiGbUx--zY67GF05Y_XxuW6APKaqYu8F_nR9Qu7Kg@mail.gmail.com>
Date: Thu, 6 Jan 2022 16:53:08 -0800
From: Dimitris Michailidis <d.michailidis@...gible.com>
To: Andrew Lunn <andrew@...n.ch>
Cc: Jakub Kicinski <kuba@...nel.org>, davem@...emloft.net,
netdev@...r.kernel.org
Subject: Re: [PATCH net-next v4 3/8] net/funeth: probing and netdev ops
On Wed, Jan 5, 2022 at 8:12 AM Andrew Lunn <andrew@...n.ch> wrote:
>
> > > > + if ((notif->link_state | notif->missed_events) & FUN_PORT_FLAG_MAC_DOWN)
> > > > + netif_carrier_off(netdev);
> > > > + if (notif->link_state & FUN_PORT_FLAG_NH_DOWN)
> > > > + netif_dormant_on(netdev);
> > > > + if (notif->link_state & FUN_PORT_FLAG_NH_UP)
> > > > + netif_dormant_off(netdev);
> > >
> > > What does this do?
> >
> > FW may get exclusive access to the ports in some cases and during those times
> > host traffic isn't serviced. Changing a port to dormant is its way of
> > telling the host
> > the port is unavailable though it has link up.
>
> Quoting RFC2863
>
> 3.1.12. New states for IfOperStatus
>
> Three new states have been added to ifOperStatus: 'dormant',
> 'notPresent', and 'lowerLayerDown'.
>
> The dormant state indicates that the relevant interface is not
> actually in a condition to pass packets (i.e., it is not 'up') but is
> in a "pending" state, waiting for some external event. For "on-
> demand" interfaces, this new state identifies the situation where the
> interface is waiting for events to place it in the up state.
> Examples of such events might be:
>
> (1) having packets to transmit before establishing a connection to
> a remote system;
>
> (2) having a remote system establish a connection to the interface
> (e.g. dialing up to a slip-server).
>
> I can see this being valid if your FW is doing 802.1X. But i'm not
> sure it is valid for other use cases. What exactly is your firmware
> doing which stops it from handling frames?
The downtime happens occasionally after link up while the internal
control processor is configuring the network units. So internal setup
delays. I am told that "in the near future" the need for this will be
removed. Trusting that near will be reasonable I'll remove this now.
>
> Andrew
Powered by blists - more mailing lists