[ovs-dev] [threads v2 00/13] make some important libraries thread-safe
Ben Pfaff
blp at nicira.com
Fri Jul 12 21:54:27 UTC 2013
Many patches have been committed since v1. Of the remaining patches,
I think only "vlog: Make thread-safe." has changed, and only to fix
a PRINTF_FORMAT annotation.
Ben Pfaff (13):
stress: Remove essentially unused library.
netlink-socket: Simplify use of transactions and dumps.
netlink-socket: Make thread-safe.
poll-loop: Simplify and speed up polling.
poll-loop: Make poll loop data structures per-thread.
latch: New module for a thread-safe, signal-safe, pollable doorbell.
system-stats: Move into separate thread.
byteq: Make the queue size variable instead of fixed at BYTEQ_SIZE
bytes.
util: New macros ROUND_UP_POW2, ROUND_DOWN_POW2.
async-append: New library to allow asynchronous appending to a log
file.
vlog: Use async I/O.
vlog: Make VLOG_ONCE thread-safe.
vlog: Make thread-safe.
configure.ac | 1 +
lib/async-append-aio.c | 178 +++++++++++++++++++++++++++++++++
lib/async-append-sync.c | 62 ++++++++++++
lib/async-append.h | 67 +++++++++++++
lib/automake.mk | 17 ++--
lib/byteq.c | 26 +++--
lib/byteq.h | 10 +-
lib/dpif-linux.c | 20 ++---
lib/jsonrpc.c | 5 +-
lib/latch.c | 72 ++++++++++++++
lib/latch.h | 37 +++++++
lib/netdev-linux.c | 18 +---
lib/netlink-socket.c | 233 +++++++++++++++++++++-----------------------
lib/netlink-socket.h | 15 +++-
lib/poll-loop.c | 154 ++++++++++++++---------------
lib/poll-loop.h | 20 ++--
lib/route-table.c | 26 +-----
lib/stream-fd.c | 17 ---
lib/stress-unixctl.man | 72 --------------
lib/stress.c | 219 -----------------------------------------
lib/stress.h | 94 ------------------
lib/util.h | 19 ++++
lib/vlog.c | 180 +++++++++++++++++++++-------------
lib/vlog.h | 23 +++--
m4/openvswitch.m4 | 5 +
manpages.mk | 4 -
ovsdb/ovsdb-server.1.in | 1 -
ovsdb/ovsdb-server.c | 2 -
tests/library.at | 2 +
tests/test-util.c | 65 ++++++++++++
vswitchd/bridge.c | 3 +
vswitchd/ovs-vswitchd.8.in | 1 -
vswitchd/ovs-vswitchd.c | 2 -
vswitchd/system-stats.c | 105 ++++++++++++++++----
34 files changed, 974 insertions(+), 801 deletions(-)
create mode 100644 lib/async-append-aio.c
create mode 100644 lib/async-append-sync.c
create mode 100644 lib/async-append.h
create mode 100644 lib/latch.c
create mode 100644 lib/latch.h
delete mode 100644 lib/stress-unixctl.man
delete mode 100644 lib/stress.c
delete mode 100644 lib/stress.h
--
1.7.2.5
More information about the dev
mailing list