git://git.onelab.eu
/
sliver-openvswitch.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
use error checking mutexs in pltap&tunnel
[sliver-openvswitch.git]
/
ofproto
/
ofproto-dpif-sflow.c
diff --git
a/ofproto/ofproto-dpif-sflow.c
b/ofproto/ofproto-dpif-sflow.c
index
065aa8b
..
158887f
100644
(file)
--- 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)
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;
{
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)
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;
{
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);
{
if (ds->sflow_agent) {
sfl_agent_release(ds->sflow_agent);
+ free(ds->sflow_agent);
ds->sflow_agent = NULL;
}
collectors_destroy(ds->collectors);
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)) {
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);
}
ovsthread_once_done(&once);
}