diff options
author | glebius <glebius@FreeBSD.org> | 2015-04-21 20:25:12 +0000 |
---|---|---|
committer | glebius <glebius@FreeBSD.org> | 2015-04-21 20:25:12 +0000 |
commit | 2ac0a031eda2d2ada63bfe5b11168a54547e56fa (patch) | |
tree | c3576568001403fbeddc070cc8b936ae1a8c294a /lib/libc/stdio/flags.c | |
parent | 7a2ec8ae4f5c361fbaeec30561bd55810c0fb172 (diff) | |
download | FreeBSD-src-2ac0a031eda2d2ada63bfe5b11168a54547e56fa.zip FreeBSD-src-2ac0a031eda2d2ada63bfe5b11168a54547e56fa.tar.gz |
Improve carp(4) locking:
- Use the carp_sx to serialize not only CARP ioctls, but also carp_attach()
and carp_detach().
- Use cif_mtx to lock only access to those the linked list.
- These locking changes allow us to do some memory allocations with M_WAITOK
and also properly call callout_drain() in carp_destroy().
- In carp_attach() assert that ifaddr isn't attached. We always come here
with a pristine address from in[6]_control().
Reviewed by: oleg
Sponsored by: Nginx, Inc.
Diffstat (limited to 'lib/libc/stdio/flags.c')
0 files changed, 0 insertions, 0 deletions