[RTEMS Project] #2795: Overrun Handling for general real-time models

RTEMS trac trac at rtems.org
Wed Jan 25 06:33:58 UTC 2017


#2795: Overrun Handling for general real-time models
-------------------------------------+-------------------------------------
 Reporter:  khchen                   |       Owner:  Gedare Bloom
                                     |  <gedare@…>
     Type:  enhancement              |      Status:  reopened
 Priority:  high                     |   Milestone:  4.12
Component:  cpukit                   |     Version:  4.11
 Severity:  blocker                  |  Resolution:
 Keywords:  Overrun, RMS, SP,        |
  Scheduler, Periodicity             |
-------------------------------------+-------------------------------------

Comment (by sebastian.huber):

 The missed count is just a statistic.

 For the integer overflow in

 {{{
 #!c
 static void _Rate_monotonic_Renew_deadline(
   Rate_monotonic_Control *the_period,
   Thread_Control         *owner,
   ISR_lock_Context       *lock_context
 )
 {
   uint64_t deadline;

   ++the_period->postponed_jobs;
   the_period->state = RATE_MONOTONIC_EXPIRED;

   deadline = _Watchdog_Per_CPU_insert_relative(
     &the_period->Timer,
     _Per_CPU_Get(),
     the_period->next_length
   );
   the_period->latest_deadline = deadline;

   _Rate_monotonic_Release( the_period, lock_context );
 }
 }}}

 we have some options.

 1. Ignore it, then postponed jobs count will be zero again.
 2. Issue a new fatal error.
 3. Saturate, e.g. stay at 0xffffffff.

 I am in favour of 3. It should be documented in any way.

--
Ticket URL: <http://devel.rtems.org/ticket/2795#comment:18>
RTEMS Project <http://www.rtems.org/>
RTEMS Project


More information about the bugs mailing list