> -----Original Message-----
> From: lng-odp [mailto:[email protected]] On Behalf Of EXT Maxim
> Uvarov
> Sent: Friday, October 23, 2015 1:03 PM
> To: [email protected]
> Subject: Re: [lng-odp] [PATCH v5 3/6] test: l2fwd: fix crash when accuracy is 
> set to
> 0
> 
> On 10/23/2015 11:42, Matias Elo wrote:
> > Application crashes if accuracy option is set to zero
> > (division by zero). Disable statistics printing if accuracy
> > <= 0.
> >
> > Signed-off-by: Matias Elo <[email protected]>
> > ---
> >   test/performance/odp_l2fwd.c | 59 +++++++++++++++++++++++++++--------
> ---------
> >   1 file changed, 37 insertions(+), 22 deletions(-)
> >
> > diff --git a/test/performance/odp_l2fwd.c b/test/performance/odp_l2fwd.c
> > index c50ca20..fc60ebe 100644
> > --- a/test/performance/odp_l2fwd.c
> > +++ b/test/performance/odp_l2fwd.c
> > @@ -346,41 +346,56 @@ static odp_pktio_t create_pktio(const char *dev,
> odp_pool_t pool)
> >    *
> >    */
> >   static int print_speed_stats(int num_workers, stats_t **thr_stats,
> > -                         int duration, int timeout)
> > +                        int duration, int timeout)
> >   {
> > -   uint64_t pkts, pkts_prev = 0, pps, drops, maximum_pps = 0;
> > -   int i, elapsed = 0;
> > +   uint64_t pkts = 0;
> > +   uint64_t pkts_prev = 0;
> > +   uint64_t pps;
> > +   uint64_t drops;
> > +   uint64_t maximum_pps = 0;
> > +   int i;
> > +   int elapsed = 0;
> > +   int stats_enabled = 0;
> >     int loop_forever = (duration == 0);
> >
> > +   if (timeout > 0)
> > +           stats_enabled = 1;
> > +
> >     /* Wait for all threads to be ready*/
> >     odp_barrier_wait(&barrier);
> >
> >     do {
> > -           pkts = 0;
> > -           drops = 0;
> > +           if (stats_enabled) {
> > +                   pkts = 0;
> > +                   drops = 0;
> >
> > -           sleep(timeout);
> > +                   sleep(timeout);
> >
> > -           for (i = 0; i < num_workers; i++) {
> > -                   pkts += thr_stats[i]->packets;
> > -                   drops += thr_stats[i]->drops;
> > +                   for (i = 0; i < num_workers; i++) {
> > +                           pkts += thr_stats[i]->packets;
> > +                           drops += thr_stats[i]->drops;
> > +                   }
> > +                   pps = (pkts - pkts_prev) / timeout;
> > +                   if (pps > maximum_pps)
> > +                           maximum_pps = pps;
> > +                   printf("%" PRIu64 " pps, %" PRIu64 " max pps, ",  pps,
> > +                          maximum_pps);
> > +
> > +                   printf(" %" PRIu64 " total drops\n", drops);
> > +
> > +                   elapsed += timeout;
> > +                   pkts_prev = pkts;
> > +           } else {
> > +                   sleep(1);
> > +                   elapsed += 1;
> >             }
> > -           pps = (pkts - pkts_prev) / timeout;
> > -           if (pps > maximum_pps)
> > -                   maximum_pps = pps;
> > -           printf("%" PRIu64 " pps, %" PRIu64 " max pps, ",  pps,
> > -                  maximum_pps);
> > -
> > -           printf(" %" PRIu64 " total drops\n", drops);
> > -
> > -           elapsed += timeout;
> > -           pkts_prev = pkts;
> >     } while (loop_forever || (elapsed < duration));
> >
> > -   printf("TEST RESULT: %" PRIu64 " maximum packets per second.\n",
> > -          maximum_pps);
> > +   if (stats_enabled)
> > +           printf("TEST RESULT: %" PRIu64 " maximum packets per
> second.\n",
> > +                  maximum_pps);
> >
> > -   return pkts > 100 ? 0 : -1;
> > +   return 0;
> 
> My comment was not fixed. l2fwd run should return 0 if we think it
> worked well, -1 if there was errors (like no packets,
> or l2fwd does not operate properly).
> 

Missed that message completely (still getting used to a new Outlook version). 
I'll submit new version soon.

-Matias

> Maxim.
> 
> >   }
> >
> >   /**
> 
> _______________________________________________
> lng-odp mailing list
> [email protected]
> https://lists.linaro.org/mailman/listinfo/lng-odp
_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to