By initializing major_frame in a653sched_init(), an idle period was
inadvertently introduced into the default schedule. Account for the
initial value of major_frame when populating the default schedule.
Fixes: f2927d8343ae ("xen/arinc653: fix delay in the start of major frame")
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
xen/common/sched/arinc653.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/xen/common/sched/arinc653.c b/xen/common/sched/arinc653.c
index 8a4f4259d8b3..b709bcfcc8a4 100644
--- a/xen/common/sched/arinc653.c
+++ b/xen/common/sched/arinc653.c
@@ -425,7 +425,8 @@ a653sched_alloc_udata(const struct scheduler *ops, struct sched_unit *unit,
sched_priv->schedule[entry].runtime = DEFAULT_TIMESLICE;
sched_priv->schedule[entry].unit = unit;
- sched_priv->major_frame += DEFAULT_TIMESLICE;
+ if ( entry )
+ sched_priv->major_frame += DEFAULT_TIMESLICE;
++sched_priv->num_schedule_entries;
}
}
base-commit: 5ebd4dd14118e4eb24f1d409a7ca3773f77e7e41
--
2.53.0