On Mon, Nov 23, 2020 at 1:36 AM Xie He <xie.he.0141@xxxxxxxxx> wrote: > > Some drivers don't support carrier status and will never change it. > Their carrier status will always be UP. There will not be a > NETDEV_CHANGE event. > > lapbether doesn't change carrier status. I also have my own virtual > HDLC WAN driver (for testing) which also doesn't change carrier > status. > > I just tested with lapbether. When I bring up the interface, there > will only be NETDEV_PRE_UP and then NETDEV_UP. There will not be > NETDEV_CHANGE. The carrier status is alway UP. > > I haven't tested whether a device can receive NETDEV_CHANGE when it is > down. It's possible for a device driver to call netif_carrier_on when > the interface is down. Do you know what will happen if a device driver > calls netif_carrier_on when the interface is down? I just did a test on lapbether and saw there would be no NETDEV_CHANGE event when the netif is down, even if netif_carrier_on/off is called. So we can rest assured of this part.