Hi Gedare, Thanks a lot. I should read all the documents again...
Best, Kuan-Hsun 2017-01-25 17:16 GMT+01:00 Gedare Bloom <ged...@rtems.org>: > On Wed, Jan 25, 2017 at 9:16 AM, Kuan Hsun Chen <c00...@gmail.com> wrote: > > Hi Sebastian, > > > > Okay. I will clarify it. > > > > I used git format-patch -1 to generate the patch and git send-email --to > > devel@rtems.org *.patch to send out the mail. > > Could you tell me what I have missed? > > > https://devel.rtems.org/wiki/Developer/Git#GitCommits > > This should likely be linked to / added in the > https://devel.rtems.org/wiki/Developer/Coding/Conventions > > > Aha, it is 2017... > > > > Best, > > Kuan-hsun > > > > 2017-01-25 15:10 GMT+01:00 Sebastian Huber > > <sebastian.hu...@embedded-brains.de>: > >> > >> Please use the standard Git commit message format. > >> > >> > >> On 25/01/17 15:04, Kuan-Hsun Chen wrote: > >>> > >>> sptests/sp69: Revise > >>> Add in the verification of the postponed job count for > >>> rtems_rate_monotonic_get_status(). > >>> --- > >>> cpukit/rtems/include/rtems/rtems/ratemon.h | 24 > >>> +++++------------------- > >>> cpukit/rtems/src/ratemongetstatus.c | 2 ++ > >>> cpukit/rtems/src/ratemonperiod.c | 14 -------------- > >>> testsuites/sptests/sp69/init.c | 8 ++++++++ > >>> testsuites/sptests/sp69/sp69.doc | 2 ++ > >>> testsuites/sptests/sp69/sp69.scn | 5 +++-- > >>> 6 files changed, 20 insertions(+), 35 deletions(-) > >>> > >>> diff --git a/cpukit/rtems/include/rtems/rtems/ratemon.h > >>> b/cpukit/rtems/include/rtems/rtems/ratemon.h > >>> index 54ddd05..59512c5 100644 > >>> --- a/cpukit/rtems/include/rtems/rtems/ratemon.h > >>> +++ b/cpukit/rtems/include/rtems/rtems/ratemon.h > >>> @@ -182,6 +182,11 @@ typedef struct { > >>> * then this field has no meaning. > >>> */ > >>> rtems_thread_cpu_usage_t executed_since_last_period; > >>> + > >>> + /** This is the number of postponed jobs. This number > >>> + * is only increased by the corresponding watchdog, > >>> + * and is decreased by RMS manager with the postponed job releasing. > >>> */ > >>> + uint32_t postponed_jobs_count; > >>> } rtems_rate_monotonic_period_status; > >> > >> > >> Number in comment vs. count in member. I prefer count. Please clarify > this > >> a bit and avoid the watchdog. The watchdog is an implementation detail. > The > >> mentioning of RMS manager is redundant. > >> > >> > >>> /** > >>> @@ -417,25 +422,6 @@ rtems_status_code rtems_rate_monotonic_period( > >>> rtems_interval length > >>> ); > >>> -/** > >>> - * @brief Return the number of postponed jobs > >>> - * > >>> - * This is a helper function for runtime monitoring to return > >>> - * the number of postponed jobs in this given period. This number > >>> - * is only increased by the corresponding watchdog, > >>> - * and is decreased by RMS manager with the postponed job releasing. > >>> - * > >>> - * @param[in] id is the period id > >>> - * > >>> - * @retval This helper function returns the number of postponed > >>> - * jobs with a given period_id. > >>> - * > >>> - */ > >>> -uint32_t rtems_rate_monotonic_postponed_job_count( > >>> - rtems_id period_id > >>> -); > >>> - > >>> - > >>> /**@}*/ > >>> #ifdef __cplusplus > >>> diff --git a/cpukit/rtems/src/ratemongetstatus.c > >>> b/cpukit/rtems/src/ratemongetstatus.c > >>> index 403c6ed..8bd3613 100644 > >>> --- a/cpukit/rtems/src/ratemongetstatus.c > >>> +++ b/cpukit/rtems/src/ratemongetstatus.c > >>> @@ -9,6 +9,7 @@ > >>> * COPYRIGHT (c) 1989-2009. > >>> * On-Line Applications Research Corporation (OAR). > >>> * Copyright (c) 2016 embedded brains GmbH. > >>> + * Copyright (c) 2016 Kuan-Hsun Chen. > >> > >> > >> We have 2017. > >> > >> > >>> * > >>> * The license and distribution terms for this file may be > >>> * found in the file LICENSE in this distribution or at > >>> @@ -43,6 +44,7 @@ rtems_status_code rtems_rate_monotonic_get_status( > >>> period_status->owner = the_period->owner->Object.id; > >>> period_status->state = the_period->state; > >>> + period_status->postponed_jobs_count = the_period->postponed_jobs; > >>> if ( the_period->state == RATE_MONOTONIC_INACTIVE ) { > >>> /* > >>> diff --git a/cpukit/rtems/src/ratemonperiod.c > >>> b/cpukit/rtems/src/ratemonperiod.c > >>> index 97547e2..efcd121 100644 > >>> --- a/cpukit/rtems/src/ratemonperiod.c > >>> +++ b/cpukit/rtems/src/ratemonperiod.c > >>> @@ -302,20 +302,6 @@ static rtems_status_code > >>> _Rate_monotonic_Block_while_expired( > >>> return RTEMS_TIMEOUT; > >>> } > >>> -uint32_t rtems_rate_monotonic_postponed_job_count( rtems_id > period_id > >>> ) > >>> -{ > >>> - Rate_monotonic_Control *the_period; > >>> - ISR_lock_Context lock_context; > >>> - uint32_t jobs; > >>> - > >>> - the_period = _Rate_monotonic_Get( period_id, &lock_context ); > >>> - _Assert( the_period != NULL ); > >>> - > >>> - jobs = the_period->postponed_jobs; > >>> - _Rate_monotonic_Release( the_period, &lock_context ); > >>> - return jobs; > >>> -} > >>> - > >>> rtems_status_code rtems_rate_monotonic_period( > >>> rtems_id id, > >>> rtems_interval length > >>> diff --git a/testsuites/sptests/sp69/init.c > >>> b/testsuites/sptests/sp69/init.c > >>> index ac6f58c..c38beb8 100644 > >>> --- a/testsuites/sptests/sp69/init.c > >>> +++ b/testsuites/sptests/sp69/init.c > >> > >> > >> Missing copyright? > >> > >>> @@ -162,6 +162,14 @@ rtems_task Init( > >>> rtems_test_assert( statistics.missed_count == i ); > >>> } > >>> + > >>> + /* Check the status */ > >>> + status = rtems_rate_monotonic_get_status( period_id, > &period_status ); > >>> + directive_failed( status, "rate_monotonic_get_status" ); > >>> + puts( > >>> + "rtems_rate_monotonic_get_status - verify value of a postponed > jobs > >>> count" > >>> + ); > >>> + rtems_test_assert( period_status.postponed_jobs_count == 3 ); > >>> TEST_END(); > >>> diff --git a/testsuites/sptests/sp69/sp69.doc > >>> b/testsuites/sptests/sp69/sp69.doc > >>> index fbf0e4e..e881a19 100644 > >>> --- a/testsuites/sptests/sp69/sp69.doc > >>> +++ b/testsuites/sptests/sp69/sp69.doc > >>> @@ -1,5 +1,6 @@ > >>> # COPYRIGHT (c) 1989-2009. > >>> # On-Line Applications Research Corporation (OAR). > >>> +# COPYRIGHT (c) Kuan-Hsun Chen. > >> > >> > >> Missing year. > >> > >> > >>> # > >>> # The license and distribution terms for this file may be > >>> # found in the file LICENSE in this distribution or at > >>> @@ -21,3 +22,4 @@ concepts: > >>> a period is initiated. > >>> + Verify the correctness of the status values returned on an active > >>> period. > >>> + Ensure the missed period count is properly maintained. > >>> ++ Verify the correctness of the postponed job count. > >>> diff --git a/testsuites/sptests/sp69/sp69.scn > >>> b/testsuites/sptests/sp69/sp69.scn > >>> index 654eea0..e102d22 100644 > >>> --- a/testsuites/sptests/sp69/sp69.scn > >>> +++ b/testsuites/sptests/sp69/sp69.scn > >>> @@ -2,8 +2,9 @@ > >>> rtems_rate_monotonic_get_status - verify values of an inactive > period > >>> rtems_rate_monotonic_get_status - check RTEMS_NOT_DEFINED > >>> rtems_rate_monotonic_get_status - verify values of an active period > >>> -wall time should be ~600000000 is 609216000 > >>> -cpu time should be ~100000000 is 109217000 > >>> +wall time should be ~600000000 is 609402399 > >>> +cpu time should be ~100000000 is 109612659 > >>> rtems_rate_monotonic_cancel - OK > >>> Testing statistics on missed periods > >>> +rtems_rate_monotonic_get_status - verify value of a postponed jobs > count > >>> *** END OF TEST 69 *** > >> > >> > >> -- > >> Sebastian Huber, embedded brains GmbH > >> > >> Address : Dornierstr. 4, D-82178 Puchheim, Germany > >> Phone : +49 89 189 47 41-16 > >> Fax : +49 89 189 47 41-09 > >> E-Mail : sebastian.hu...@embedded-brains.de > >> PGP : Public key available on request. > >> > >> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG. > >> > > > > > > _______________________________________________ > > devel mailing list > > devel@rtems.org > > http://lists.rtems.org/mailman/listinfo/devel >
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel