Markus Osterried (BA/EDD) wrote:
> Hi,
> it seems that in the RTDM API, all the timeout functions which use
> nanosecs_rel_t have a strange behaviour.
> The timeout in nanoseconds is converted to ticks and the number of ticks
> is rounded down. So when we want to wait e.g. 500000 nanoseconds and the
> timertick is 1 ms, xnpod_ns2ticks() rounds down to 0. But 0 is the
> special value RTDM_TIMEOUT_INFINITE, so we wait forever. I use Xenomai
> 2.3.1, but I think it's basically the same in trunk.

It should even impact other skins as well when in tick-based timing
mode. I would bet more users of xnpod_ns2ticks() may have overseen this
rounding issue - like RTDM did.

> Wouldn't it be better to round up the ticks instead of round it down?

Hmm, probably. Mind to work out a patch for xnpod_ticks2ns()?

What do others think about this issue? Can/should we change the rounding
behaviour at nucleus level?

Thanks for reporting,

Attachment: signature.asc
Description: OpenPGP digital signature

Xenomai-core mailing list

Reply via email to