[LITMUS^RT] sync release on integral millisecond

Björn Brandenburg bbb at mpi-sws.org
Mon Feb 18 09:56:00 CET 2013


On Feb 17, 2013, at 3:51 PM, Glenn Elliott <gelliott at cs.unc.edu> wrote:

>  I have a followup question about do_wait_for_ts_release() though.  This function sets the release point of the released task to be:
> 
> 54	litmus->release_at(current, wait.ts_release_time
> 55		+ current->rt_param.task_params.phase
> 56		- current->rt_param.task_params.period);
> 
> Why is the task period subtracted from wait.ts_release_time if wait.ts_release_time denotes time=0?  Why isn't the release time simply "wait.ts_release_time + current->rt_params.phase"?  Won't the "synchronous" task set not be released synchronously if all tasks have different periods?  Perhaps at some point release_at() added back the task period to the release time, but it doesn't appear to now.

The subsequent call to complete_job() indirectly causes the period to be added to the release time.

- Björn





More information about the litmus-dev mailing list