diff options
author | 2015-09-27 04:27:57 +0000 | |
---|---|---|
committer | 2015-09-27 04:27:57 +0000 | |
commit | 835318a0bc74cee89826b83976fa2a89771da0f3 (patch) | |
tree | 2f0c5be9436915bb747c0c8750098b4955f35e38 /lib/libcurses | |
parent | sync (diff) | |
download | wireguard-openbsd-835318a0bc74cee89826b83976fa2a89771da0f3.tar.xz wireguard-openbsd-835318a0bc74cee89826b83976fa2a89771da0f3.zip |
make carp_input mpsafe.
there are three data structures involved here:
the list of carp interfaces on a parent interface (struct carp_if)
is now accessed via the if_ih cookie. its lifetime is managed by
the if_ih_insert and if_ih_remove calls.
the second is the interfaces (struct carp_softc) in the list above.
these has been moved from being access via a TAILQ to an SRPL.
modifications to the list are serialised by the kernel lock.
the third is the list of vhost entries (struct carp_vhost_entry).
these used to be in a LIST on each carp_softc, but have been moved
to being accessed vian an SRPL. modifications to the list are
serialised by the kernel lock.
written at l2k15
tested by mpi@ and hrvoje popovski
ok mpi@
Diffstat (limited to 'lib/libcurses')
0 files changed, 0 insertions, 0 deletions