[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [XEN PATCH v2] xen/arinc653: fix delay in the start of major frame
On 15.07.2025 05:16, Anderson Choi wrote: > ARINC653 specificaion requires partition scheduling to be deterministic > and periodic over time. > > However, the use of current timestamp (now) as the baseline to calculate > next_major_frame and next_switch_time introduces a delay in the start of > major frame at every period, which breaks determinism and periodicity in > partition scheduling. > > For example, we observe 3.5 msec of accumulated delay at the 21st major > frame with the following configuration. > > Target : qemuarm64 > xen version : 4.19 (43aeacff86, x86/IRQ: constrain creator-domain-ID > assertion) > dom1 : 10 msec runtime > dom2 : 10 msec runtime > > $ a653_sched -p Pool-arinc dom1:10 dom2:10 > > 0.014553536 ---x d?v? runstate_change d1v0 runnable->running //1st major > frame > 0.034629712 ---x d?v? runstate_change d1v0 runnable->running //2nd major > frame > <snip> > 0.397747008 |||x d?v? runstate_change d1v0 runnable->running //20th > major frame > 0.418066096 -||x d?v? runstate_change d1v0 runnable->running //21st > major frame > > This is due to an inherent delta between the time value the scheduler timer > is programmed to be fired with and the time value the schedule function > is executed. > > Another observation that breaks the deterministic behavior of partition > scheduling is a delayed execution of schedule(); It was called 14 msec > later than programmed. > > 1.530603952 ---x d?v? runstate_change d1v0 runnable->running > 1.564956784 --|x d?v? runstate_change d1v0 runnable->running > > Enforce the periodic behavior of partition scheduling by using the value > next_major_frame as the base to calculate the start of major frame and > the next domain switch time. > > Per discussion with Nathan Studer, there are odd cases the first minor > frame can be also missed. In that sceanario, iterate through the schedule > after resyncing > the expected next major frame. > > Signed-off-by: Anderson Choi <anderson.choi@xxxxxxxxxx> > Suggested-by: Nathan Studer <nathan.studer@xxxxxxxxxxxxxxx> Nit: (Most) tags in chronological order, please. Jan
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |