On 04/09/2021 06:20, Joel Sherrill wrote:
On Fri, Sep 3, 2021, 11:01 PM Chris Johns <chr...@rtems.org
<mailto:chr...@rtems.org>> wrote:
On 3/9/21 11:33 pm, Sebastian Huber wrote:
> The behaviour with respect to the handling of the ticks member in
the *_when()
> directives was inconsistent. In all *_when() directives the
ticks member is
> not used to calculate the watchdog expiration time. However, the
> rtems_task_wake_when() directive ignores the ticks member of the
time of day
> completely, unlike the rtems_timer_fire_when() and
> rtems_timer_server_fire_when() directives which check that the
ticks are valid
> and then ignore them.
>
> This commit changes _TOD_Validate() to unconditionally check the
ticks value.
> Ignoring the value would make it more difficult to support the
ticks in the
> future. The watchdog implementation supports a nanoseconds
resolution.
> Checking the ticks in rtems_task_wake_when() may case problems
for existing
> applications which could now get an error status due to an
invalid ticks value.
>
> Applications should set the ticks value to zero for future
compatibility. This
> recommendation needs to be added to the documentation.
What happens with existing applications that do not touch this value?
Randomly different behaviour.
Yes, if a user only partially initializes the time of day structure,
then the application may observe sporadic errors.
Before all _when operations occurred on seconds boundaries. This will
implicitly change that or return an error.
I'm not opposed to the improved granularity but hope it doesn't burn too
many users.
My approach would be to check the ticks member in RTEMS 6.1 in all
*_when() directives and support it in RTEMS 7.1.
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel