It's probably a good idea to re-evaluate placement whenever the
affinity changes.
This additionally has the benefit of removing scheduler-specific
exceptions introduced in git c/s
e6a6fd63.
The conditionals surrounding vcpu_migrate() are left pending a re-work
of the logic to avoid the common case calling vcpu_migrate() twice (once
here, and once in context_saved().
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
vcpu_schedule_lock_irq(v);
cpumask_copy(v->cpu_affinity, affinity);
- if ( VCPU2OP(v)->sched_id == XEN_SCHEDULER_SEDF ||
- !cpumask_test_cpu(v->processor, v->cpu_affinity) )
- set_bit(_VPF_migrating, &v->pause_flags);
+
+ /* Always ask the scheduler to re-evaluate placement
+ * when changing the affinity */
+ set_bit(_VPF_migrating, &v->pause_flags);
vcpu_schedule_unlock_irq(v);