[ovs-git] Open vSwitch: ofproto-dpif-upcall: Fix ovs-vswitchd crash. (master)

dev at openvswitch.org dev at openvswitch.org
Tue Apr 22 02:03:02 UTC 2014

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Open vSwitch".

The branch, master has been updated
       via  1f8675481e8cc976931bd0a85851d780f7cf2a33 (commit)
      from  a605908001070c27aa8c755c92cd361a10b46beb (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 1f8675481e8cc976931bd0a85851d780f7cf2a33
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=1f8675481e8cc976931bd0a85851d780f7cf2a33
Author: Alex Wang <alexw at nicira.com>
ofproto-dpif-upcall: Fix ovs-vswitchd crash.
On current master, caller of udpif_set_threads() can pass 0 value
on n_handlers and n_revalidators to delete all handler and revalidator

After commit 9a159f748866 (ofproto-dpif-upcall: Remove the dispatcher
thread.), udpif_set_threads() also calls the dpif_handlers_set() with
the 0 value 'n_handlers'.  Since dpif level always assume the 'n_handlers'
be non-zero, this causes warnings and even crash of ovs-vswitchd.

This commit fixes the above issue by defining separate functions for
starting and stopping handler and revalidator threads.  So
udpif_set_threads() will never be called with 0 value arguments.

Reported-by: Andy Zhou <azhou at nicira.com>
Signed-off-by: Alex Wang <alexw at nicira.com>
Co-authored-by: Ethan Jackson <ethan at nicira.com>
Acked-by: Ethan Jackson <ethan at nicira.com>


Summary of changes:
 ofproto/ofproto-dpif-upcall.c |   75 +++++++++++++++++++++++++++--------------
 1 file changed, 50 insertions(+), 25 deletions(-)

Open vSwitch

More information about the git mailing list