diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c index 6dcf6b2c8b..485e52bd7c 100644 --- a/xen/common/sched/credit.c +++ b/xen/common/sched/credit.c @@ -1589,6 +1589,10 @@ static void cf_check csched_tick(void *_cpu) struct csched_pcpu *spc = CSCHED_PCPU(cpu); struct csched_private *prv = CSCHED_PRIV(sr->scheduler); + /* Handle race of timer disabling vs. firing when switching scheduler. */ + if ( !spc ) + return; + spc->tick++; /*