diff options
Diffstat (limited to 'recipes/iperf/iperf-2.0.4/009-delayloop.patch')
-rw-r--r-- | recipes/iperf/iperf-2.0.4/009-delayloop.patch | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/recipes/iperf/iperf-2.0.4/009-delayloop.patch b/recipes/iperf/iperf-2.0.4/009-delayloop.patch new file mode 100644 index 0000000000..a1f8dac9f5 --- /dev/null +++ b/recipes/iperf/iperf-2.0.4/009-delayloop.patch @@ -0,0 +1,19 @@ +# by Kirby Zhou < kirbyzhou \x40 sohu-rd.com > +# using sched_yield to schedule other threads, so multiple iperf can run simultaneously +# using usleep with delay-loop between 2 package is long than 1.25ms. +--- iperf-2.0.4-4/compat/delay.cpp 2009-07-06 12:02:24.166276642 +0200 ++++ iperf-2.0.4/compat/delay.cpp 2009-07-06 12:01:33.858384005 +0200 +@@ -69,6 +69,13 @@ void delay_loop( unsigned long usec ) { + + Timestamp now; + while ( now.before( end ) ) { ++ long diff = end.subUsec(now); ++ if (diff >= 1250) { ++ usleep(0); ++ } ++ if (diff >= 2) { ++ sched_yield(); ++ } + now.setnow(); + } + } |