Skip to content
  • Beniamino Galvani's avatar
    n-acd: better handle interfaces going temporarily down · d082af6b
    Beniamino Galvani authored
    NM sometimes brings an interface temporarily down (for example to
    change a VLAN MAC to align it to the parent interface's one). When
    this happens, any recv() or send() in n-acd fails, the n-acd instance
    is reset to the initial state and a DOWN event is reported to the
    manager, which currently does not handle it. The result is an
    inconsistent state.
    
    There is no simple way of dealing with the DOWN event in the
    manager. What we can do instead is to:
    
     - ignore errors during recv() because there is really nothing we can
       do, except for waiting timeouts to expire;
    
     - during probe, ignore errors during send() so that we don't exceed
       the probe timeout;
    
     - during announcement, retry after a send() error to ensure we send
       all 3 announcements.
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1578675
    d082af6b