[PATCH 1/1] Fix and extend error message in posix timer test

Gedare Bloom gedare at rtems.org
Wed May 30 15:33:34 UTC 2018


This looks fine to me, and I'll commit after I can test it. (We
currently don't apply any significance to --signed-off-by in RTEMS
Project.) I'm investigating your inquiry on the 0/1 cover letter.

On Tue, May 15, 2018 at 5:21 AM, Martin Erik Werner
<martinerikwerner.aac at gmail.com> wrote:
> _Timespec_Equal_to() does not set errno, hence avoid using perror(),
> instead use fprintf() to stderr, and extend the error message to provide
> information about what the error is (measured timer value after
> re-arming is not equal to the configured interval), and how large of a
> difference was measured.
>
> Signed-off-by: Martin Erik Werner <martin.werner at aacmicrotec.com>
> ---
>  testsuites/psxtests/psxtimer01/psxtimer.c | 14 ++++++++++++--
>  1 file changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/testsuites/psxtests/psxtimer01/psxtimer.c b/testsuites/psxtests/psxtimer01/psxtimer.c
> index 032e9f8e6c..6ec049ac54 100644
> --- a/testsuites/psxtests/psxtimer01/psxtimer.c
> +++ b/testsuites/psxtests/psxtimer01/psxtimer.c
> @@ -143,7 +143,12 @@ void * task_a (void *arg)
>         rtems_test_exit(0);
>       }
>       if (! _Timespec_Equal_to( &timerdata.it_value, &my_period )){
> -       perror ("Error in Task A timer_gettime\n");
> +       fprintf(
> +           stderr, "Error in Task A timer_gettime:\n"
> +           "  re-armed timer: %" PRIdtime_t ":%ld does not match interval: %" PRIdtime_t ":%ld\n",
> +           timerdata.it_value.tv_sec, timerdata.it_value.tv_nsec,
> +           my_period.tv_sec, my_period.tv_nsec
> +      );
>       }
>       clock = time(NULL);
>       printf("Executing task A with count = %2i %s", params->count, ctime(&clock));
> @@ -291,7 +296,12 @@ void * task_c (void *arg)
>         rtems_test_exit(0);
>       }
>       if (! _Timespec_Equal_to( &timerdata.it_value, &my_period) ){
> -       perror ("Error in Task C timer_gettime\n");
> +       fprintf(
> +           stderr, "Error in Task A timer_gettime:\n"
> +           "  re-armed timer: %" PRIdtime_t ":%ld does not match interval: %" PRIdtime_t ":%ld\n",
> +           timerdata.it_value.tv_sec, timerdata.it_value.tv_nsec,
> +           my_period.tv_sec, my_period.tv_nsec
> +       );
>       }
>       pthread_mutex_lock (&data.mutex);
>       while (data.updated == FALSE) {
> --
> 2.11.0
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel



More information about the devel mailing list