On Thu, Apr 09, 2015 at 06:40:26PM -0700, Andy Zhou wrote:
> Add ovsdb_monitor_add_jsonrpc_monitor(). This change will allow
> ovsdb_monitor to be reference counted.
> 
> Signed-off-by: Andy Zhou <[email protected]>
> Acked-by: Ben Pfaff <[email protected]>
> 
> ---
> v1->v2: style fixes
> v2->v3: no change

I get a bunch of test failures with this patch applied, valgrind says:

     Invalid read of size 4
        at 0x8050A79: ovsdb_jsonrpc_monitor_destroy (jsonrpc-server.c:1310)
        by 0x80537FC: ovsdb_monitor_destroy_callback (monitor.c:754)
        by 0x805339A: ovsdb_remove_replica (ovsdb.c:430)
        by 0x805339A: ovsdb_destroy (ovsdb.c:368)
        by 0x804D49D: close_db (ovsdb-server.c:388)
        by 0x804C93D: main (ovsdb-server.c:336)
      Address 0x4642f30 is 16 bytes inside a block of size 32 free'd
        at 0x402A3A8: free (vg_replace_malloc.c:473)
        by 0x8050B56: ovsdb_jsonrpc_monitor_remove_all (jsonrpc-server.c:1282)
        by 0x8051138: ovsdb_jsonrpc_session_run (jsonrpc-server.c:453)
        by 0x8051138: ovsdb_jsonrpc_session_run_all (jsonrpc-server.c:497)
        by 0x8051138: ovsdb_jsonrpc_server_run (jsonrpc-server.c:345)
        by 0x804BDC6: main_loop (ovsdb-server.c:157)
        by 0x804BDC6: main (ovsdb-server.c:331)

     Invalid read of size 4
        at 0x805EBBF: json_destroy (json.c:337)
        by 0x8050A80: ovsdb_jsonrpc_monitor_destroy (jsonrpc-server.c:1310)
        by 0x80537FC: ovsdb_monitor_destroy_callback (monitor.c:754)
        by 0x805339A: ovsdb_remove_replica (ovsdb.c:430)
        by 0x805339A: ovsdb_destroy (ovsdb.c:368)
        by 0x804D49D: close_db (ovsdb-server.c:388)
        by 0x804C93D: main (ovsdb-server.c:336)
      Address 0x4643010 is 0 bytes inside a block of size 16 free'd
        at 0x402A3A8: free (vg_replace_malloc.c:473)
        by 0x8050A80: ovsdb_jsonrpc_monitor_destroy (jsonrpc-server.c:1310)
        by 0x8050B56: ovsdb_jsonrpc_monitor_remove_all (jsonrpc-server.c:1282)
        by 0x8051138: ovsdb_jsonrpc_session_run (jsonrpc-server.c:453)
        by 0x8051138: ovsdb_jsonrpc_session_run_all (jsonrpc-server.c:497)
        by 0x8051138: ovsdb_jsonrpc_server_run (jsonrpc-server.c:345)
        by 0x804BDC6: main_loop (ovsdb-server.c:157)
        by 0x804BDC6: main (ovsdb-server.c:331)

     Invalid free() / delete / delete[] / realloc()
        at 0x402A3A8: free (vg_replace_malloc.c:473)
        by 0x8050A80: ovsdb_jsonrpc_monitor_destroy (jsonrpc-server.c:1310)
        by 0x80537FC: ovsdb_monitor_destroy_callback (monitor.c:754)
        by 0x805339A: ovsdb_remove_replica (ovsdb.c:430)
        by 0x805339A: ovsdb_destroy (ovsdb.c:368)
        by 0x804D49D: close_db (ovsdb-server.c:388)
        by 0x804C93D: main (ovsdb-server.c:336)
      Address 0x4643010 is 0 bytes inside a block of size 16 free'd
        at 0x402A3A8: free (vg_replace_malloc.c:473)
        by 0x8050A80: ovsdb_jsonrpc_monitor_destroy (jsonrpc-server.c:1310)
        by 0x8050B56: ovsdb_jsonrpc_monitor_remove_all (jsonrpc-server.c:1282)
        by 0x8051138: ovsdb_jsonrpc_session_run (jsonrpc-server.c:453)
        by 0x8051138: ovsdb_jsonrpc_session_run_all (jsonrpc-server.c:497)
        by 0x8051138: ovsdb_jsonrpc_server_run (jsonrpc-server.c:345)
        by 0x804BDC6: main_loop (ovsdb-server.c:157)
        by 0x804BDC6: main (ovsdb-server.c:331)

and so on.

I see no such problems with just patches 1 to 16 applied.
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev

Reply via email to