Skip to content

Commit

Permalink
worker: New library for breaking a daemon into multiple processes.
Browse files Browse the repository at this point in the history
ovs-vswitchd is effectively a "soft real-time" process, because flows that
do not get set up quickly lead to packet loss or retransmission.  We've
done our best to keep it from blocking unnecessarily, but some operations
unavoidably block.  This new library allows a daemon to break itself up
into a main process and a worker process, connected by an RPC channel,
with the idea being that the main process will delegate any possibly
blocking operations to the worker.

This commit also modifies ovs-vswitchd to start a worker process, but it
does not actually introduce any uses for the worker process.  Upcoming
commits will add those.

Signed-off-by: Ben Pfaff <[email protected]>
  • Loading branch information
blp committed Jul 18, 2012
1 parent d41d4b7 commit 70e4e58
Show file tree
Hide file tree
Showing 4 changed files with 523 additions and 1 deletion.
4 changes: 3 additions & 1 deletion lib/automake.mk
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,9 @@ lib_libopenvswitch_a_SOURCES = \
lib/vlog.c \
lib/vlog.h \
lib/vswitch-idl.c \
lib/vswitch-idl.h
lib/vswitch-idl.h \
lib/worker.c \
lib/worker.h

nodist_lib_libopenvswitch_a_SOURCES = \
lib/dirs.c
Expand Down
Loading

0 comments on commit 70e4e58

Please sign in to comment.