HomeFreeBSD

MFC r356240: Relax locking of carp_forus().

Description

MFC r356240: Relax locking of carp_forus().

This fixes deadlock between CARP and bridge. Bridge calls this function
taking CARP lock while holding bridge lock. Same time CARP tries to send
its announcements via the bridge while holding CARP lock.

Use of CARP_LOCK() here does not solve anything, since sc_addr is constant
while race on sc_state is harmless and use of the lock does not close it.

Details

Provenance
mavAuthored on
Parents
rS356711: MFC r356240: Relax locking of carp_forus().
Branches
Unknown
Tags
Unknown