File 56b0a92c-recalculate-cpupool-credits-when-updating-timeslice.patch of Package xen.11319
References: bsc#963923
# Commit ffc342fbb060cd753fc3a5f6fb6f550dd29a2637
# Date 2016-02-02 14:03:40 +0100
# Author Juergen Gross <jgross@suse.com>
# Committer Jan Beulich <jbeulich@suse.com>
credit: recalculate per-cpupool credits when updating timeslice
When modifying the timeslice of the credit scheduler in a cpupool the
cpupool global credit value (n_cpus * credits_per_tslice) isn't
recalculated. This will lead to wrong scheduling decisions later.
Do the recalculation when updating the timeslice.
Signed-off-by: Juergen Gross <jgross@suse.com>
Tested-by: Alan.Robinson <alan.robinson@ts.fujitsu.com>
Reviewed-by: Dario Faggioli <dario.faggioli@citrix.com>
--- a/xen/common/sched_credit.c
+++ b/xen/common/sched_credit.c
@@ -1093,6 +1093,7 @@ __csched_set_tslice(struct csched_privat
prv->ticks_per_tslice = 1;
prv->tick_period_us = prv->tslice_ms * 1000 / prv->ticks_per_tslice;
prv->credits_per_tslice = CSCHED_CREDITS_PER_MSEC * prv->tslice_ms;
+ prv->credit = prv->credits_per_tslice * prv->ncpus;
}
static int