X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=ofproto%2Fofproto-dpif-sflow.c;h=158887f035d0b792e1395752ada121395dd8f752;hb=015ac88281952a1b43ad46e9e6300db1c6e3647b;hp=065aa8b0662d6cd2fe6930cc26b1db28fa8b14d0;hpb=bd3950ddfa5cf54d79feb332782d66d27c86090f;p=sliver-openvswitch.git diff --git a/ofproto/ofproto-dpif-sflow.c b/ofproto/ofproto-dpif-sflow.c index 065aa8b06..158887f03 100644 --- a/ofproto/ofproto-dpif-sflow.c +++ b/ofproto/ofproto-dpif-sflow.c @@ -146,7 +146,7 @@ sflow_agent_send_packet_cb(void *ds_, SFLAgent *agent OVS_UNUSED, static struct dpif_sflow_port * dpif_sflow_find_port(const struct dpif_sflow *ds, odp_port_t odp_port) - OVS_REQUIRES(&mutex) + OVS_REQUIRES(mutex) { struct dpif_sflow_port *dsp; @@ -162,7 +162,7 @@ dpif_sflow_find_port(const struct dpif_sflow *ds, odp_port_t odp_port) static void sflow_agent_get_counters(void *ds_, SFLPoller *poller, SFL_COUNTERS_SAMPLE_TYPE *cs) - OVS_REQUIRES(&mutex) + OVS_REQUIRES(mutex) { struct dpif_sflow *ds = ds_; SFLCounters_sample_element elem; @@ -280,6 +280,7 @@ dpif_sflow_clear__(struct dpif_sflow *ds) OVS_REQUIRES(mutex) { if (ds->sflow_agent) { sfl_agent_release(ds->sflow_agent); + free(ds->sflow_agent); ds->sflow_agent = NULL; } collectors_destroy(ds->collectors); @@ -317,7 +318,7 @@ dpif_sflow_create(void) struct dpif_sflow *ds; if (ovsthread_once_start(&once)) { - ovs_mutex_init(&mutex, PTHREAD_MUTEX_RECURSIVE); + ovs_mutex_init_recursive(&mutex); ovsthread_once_done(&once); }