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
Release Open vSwitch 1.1.0
[sliver-openvswitch.git]
/
lib
/
sflow_sampler.c
diff --git
a/lib/sflow_sampler.c
b/lib/sflow_sampler.c
index
759b5a2
..
280d54d
100644
(file)
--- a/
lib/sflow_sampler.c
+++ b/
lib/sflow_sampler.c
@@
-16,19
+16,22
@@
void sfl_sampler_init(SFLSampler *sampler, SFLAgent *agent, SFLDataSource_instan
SFLDataSource_instance dsi = *pdsi;
/* preserve the *nxt pointer too, in case we are resetting this poller and it is
SFLDataSource_instance dsi = *pdsi;
/* preserve the *nxt pointer too, in case we are resetting this poller and it is
- already part of the agent's linked list (thanks to Matt Woodly for pointing this out) */
+ already part of the agent's linked list (thanks to Matt Woodly for pointing this out,
+ and to Andy Kitchingman for pointing out that it applies to the hash_nxt ptr too) */
SFLSampler *nxtPtr = sampler->nxt;
SFLSampler *nxtPtr = sampler->nxt;
-
+ SFLSampler *hashPtr = sampler->hash_nxt;
+
/* clear everything */
memset(sampler, 0, sizeof(*sampler));
/* clear everything */
memset(sampler, 0, sizeof(*sampler));
-
- /* restore the linked list ptr */
+
+ /* restore the linked list
and hash-table
ptr */
sampler->nxt = nxtPtr;
sampler->nxt = nxtPtr;
-
+ sampler->hash_nxt = hashPtr;
+
/* now copy in the parameters */
sampler->agent = agent;
sampler->dsi = dsi;
/* now copy in the parameters */
sampler->agent = agent;
sampler->dsi = dsi;
-
+
/* set defaults */
sampler->sFlowFsMaximumHeaderSize = SFL_DEFAULT_HEADER_SIZE;
sampler->sFlowFsPacketSamplingRate = SFL_DEFAULT_SAMPLING_RATE;
/* set defaults */
sampler->sFlowFsMaximumHeaderSize = SFL_DEFAULT_HEADER_SIZE;
sampler->sFlowFsPacketSamplingRate = SFL_DEFAULT_SAMPLING_RATE;
@@
-154,7
+157,7
@@
inline static u_int32_t nextRandomSkip(u_int32_t mean)
{
if(mean == 0 || mean == 1) return 1;
return ((random() % ((2 * mean) - 1)) + 1);
{
if(mean == 0 || mean == 1) return 1;
return ((random() % ((2 * mean) - 1)) + 1);
-}
+}
/*_________________---------------------------__________________
_________________ sfl_sampler_takeSample __________________
/*_________________---------------------------__________________
_________________ sfl_sampler_takeSample __________________