On Thu, 10 Jan 2008 12:01:31 -0800 Darren Hart <[EMAIL PROTECTED]> wrote:

> On Thursday 10 January 2008 09:47:16 Darren Hart wrote:
> > On Thursday 10 January 2008 03:12:35 Sebastien Dugue wrote:
> > >   Add a Missed period (calc took too long) check to
> > > periodic_cpu_load just as is done in periodic_cpu_load_single.
> > >
> > > Signed-off-by: Sebastien Dugue <[EMAIL PROTECTED]>
> >
> > Acked-by: Darren Hart <[EMAIL PROTECTED]>
> 
> Eeek, sorry.  Nacked!  See below:
> 
> >
> > > Cc: Darren Hart <[EMAIL PROTECTED]>
> > > Cc: Tim Chavez <[EMAIL PROTECTED]>
> > > ---
> > >  .../func/periodic_cpu_load/periodic_cpu_load.c     |   11
> > > +++++++++-- 1 files changed, 9 insertions(+), 2 deletions(-)
> > >
> > > diff --git
> > > a/testcases/realtime/func/periodic_cpu_load/periodic_cpu_load.c
> > > b/testcases/realtime/func/periodic_cpu_load/periodic_cpu_load.c
> > > index 2bf9c53..3c39ac3 100644
> > > --- a/testcases/realtime/func/periodic_cpu_load/periodic_cpu_load.c
> > > +++ b/testcases/realtime/func/periodic_cpu_load/periodic_cpu_load.c
> > > @@ -127,7 +127,7 @@ void *periodic_thread(void *thread)
> > >   void*(*func)(void*) = parg->func;
> > >
> > >   int i = 0;
> > > - nsec_t next;
> > > + nsec_t next, now;
> > >   nsec_t exe_start, exe_end, exe_time;
> > >
> > >   next = rt_gettime();
> > > @@ -146,7 +146,14 @@ void *periodic_thread(void *thread)
> > >           dat[t->id].records[i].y = exe_time/NS_PER_US;
> > >
> > >           i++;
> > > -         rt_nanosleep(next - rt_gettime());
> > > +
> > > +         now = rt_gettime();
> > > +         if (now > next) {
> > > +                 printf("Missed period, aborting (calc took too 
> > > long)\n");
> > > +                 fail[t->id] = 1;
> 
> fail is defined as an int, not an array.  This causes the build to fail.  
> Simply replacing this line with:
> 
> fail = 1;
> 
> is an adequate fix.
> 

  I redefined fail as: int fail[THREADS_PER_GROUP * NUM_GROUPS]; in the
previous patch. I can't see how it can fail to build (and it does build
and run fine here).

  Sebastien.




-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to