SCHED_UNIT_STAT_CRANK(cur, kicked_away);
SCHED_UNIT_STAT_CRANK(cur, migrate_r);
SCHED_STAT_CRANK(migrate_kicked_away);
- sched_set_pause_flags_atomic(cur->unit, _VPF_migrating);
+ sched_set_pause_flags(cur->unit, _VPF_migrating);
}
/* Tickle cpu anyway, to let new preempt cur. */
SCHED_STAT_CRANK(tickled_busy_cpu);
{
SCHED_UNIT_STAT_CRANK(svc, migrate_r);
SCHED_STAT_CRANK(migrate_running);
- sched_set_pause_flags_atomic(currunit, _VPF_migrating);
+ sched_set_pause_flags(currunit, _VPF_migrating);
/*
* As we are about to tickle cpu, we should clear its bit in
* idlers. But, if we are here, it means there is someone running
struct vcpu *v;
for_each_sched_unit_vcpu ( unit, v )
- __set_bit(bit, &v->pause_flags);
+ set_bit(bit, &v->pause_flags);
}
/* Clear a bit in pause_flags of all vcpus of a unit. */
{
struct vcpu *v;
- for_each_sched_unit_vcpu ( unit, v )
- __clear_bit(bit, &v->pause_flags);
-}
-
-/* Set a bit in pause_flags of all vcpus of a unit via atomic updates. */
-static inline void sched_set_pause_flags_atomic(struct sched_unit *unit,
- unsigned int bit)
-{
- struct vcpu *v;
-
- for_each_sched_unit_vcpu ( unit, v )
- set_bit(bit, &v->pause_flags);
-}
-
-/* Clear a bit in pause_flags of all vcpus of a unit via atomic updates. */
-static inline void sched_clear_pause_flags_atomic(struct sched_unit *unit,
- unsigned int bit)
-{
- struct vcpu *v;
-
for_each_sched_unit_vcpu ( unit, v )
clear_bit(bit, &v->pause_flags);
}