On 4/9/21 2:20 pm, 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. > > 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.
What about the proposed behaviour being the default and a confdefs disable being available for a release? Updating to a new version can be time consuming and frustrating and a disable would at least let a user see if this is an issue they need to take care of at a less pressured time? Chris _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel