HomeFreeBSD

o Introduce carp_multicast_cleanup(), which removes and frees

Description

o Introduce carp_multicast_cleanup(), which removes and frees

multicast addresses from carp interface. [1]

o Rewrite carpdetach(), so that it does the following things: [1]

  • Stops callouts.
  • Decrements carp_suppress_preempt, if needed.
  • Downs interface and sets CARP state to INIT.
  • Calls carp_multicast_cleanup().
  • Detaches softc from carp_if and if we are the last frees the carp_if.

o Use new carpdetach() in carp_clone_destroy().
o In carp_ifdetach() acquire the carp_if lock and cleanup all

interfaces hanging on carp_if. [1]

o Make carp_ifdetach() static and use EVENT(9) to call it

from if_detach(). [2]

o In carp_setrun() exit if the softc doesn't have a valid pointer

to parent. [1]

Obtained from: OpenBSD [1]
Submitted by: Dan Lukes <dan obluda.cz> [2]
PR: kern/82908 [2]

Details

Provenance
glebiusAuthored on Mar 21 2006, 2:29 PM
Parents
rGf1fa5b4f512c: When we are doing initialization against q, use its own size, not
Branches
Unknown
Tags
Unknown

Event Timeline