[S390] vtime: cleanup per_cpu usage.
Replace per_cpu(... , smp_processor_id()) with __get_cpu_var() Signed-off-by: Jan Glauber <jan.glauber@de.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
131a395c18
commit
db77aa5f3d
|
@ -128,7 +128,7 @@ static inline void set_vtimer(__u64 expires)
|
||||||
S390_lowcore.last_update_timer = expires;
|
S390_lowcore.last_update_timer = expires;
|
||||||
|
|
||||||
/* store expire time for this CPU timer */
|
/* store expire time for this CPU timer */
|
||||||
per_cpu(virt_cpu_timer, smp_processor_id()).to_expire = expires;
|
__get_cpu_var(virt_cpu_timer).to_expire = expires;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
static inline void set_vtimer(__u64 expires)
|
static inline void set_vtimer(__u64 expires)
|
||||||
|
@ -137,7 +137,7 @@ static inline void set_vtimer(__u64 expires)
|
||||||
asm volatile ("SPT %0" : : "m" (S390_lowcore.last_update_timer));
|
asm volatile ("SPT %0" : : "m" (S390_lowcore.last_update_timer));
|
||||||
|
|
||||||
/* store expire time for this CPU timer */
|
/* store expire time for this CPU timer */
|
||||||
per_cpu(virt_cpu_timer, smp_processor_id()).to_expire = expires;
|
__get_cpu_var(virt_cpu_timer).to_expire = expires;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -145,7 +145,7 @@ static void start_cpu_timer(void)
|
||||||
{
|
{
|
||||||
struct vtimer_queue *vt_list;
|
struct vtimer_queue *vt_list;
|
||||||
|
|
||||||
vt_list = &per_cpu(virt_cpu_timer, smp_processor_id());
|
vt_list = &__get_cpu_var(virt_cpu_timer);
|
||||||
|
|
||||||
/* CPU timer interrupt is pending, don't reprogramm it */
|
/* CPU timer interrupt is pending, don't reprogramm it */
|
||||||
if (vt_list->idle & 1LL<<63)
|
if (vt_list->idle & 1LL<<63)
|
||||||
|
@ -159,7 +159,7 @@ static void stop_cpu_timer(void)
|
||||||
{
|
{
|
||||||
struct vtimer_queue *vt_list;
|
struct vtimer_queue *vt_list;
|
||||||
|
|
||||||
vt_list = &per_cpu(virt_cpu_timer, smp_processor_id());
|
vt_list = &__get_cpu_var(virt_cpu_timer);
|
||||||
|
|
||||||
/* nothing to do */
|
/* nothing to do */
|
||||||
if (list_empty(&vt_list->list)) {
|
if (list_empty(&vt_list->list)) {
|
||||||
|
@ -219,7 +219,7 @@ static void do_callbacks(struct list_head *cb_list)
|
||||||
if (list_empty(cb_list))
|
if (list_empty(cb_list))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
vt_list = &per_cpu(virt_cpu_timer, smp_processor_id());
|
vt_list = &__get_cpu_var(virt_cpu_timer);
|
||||||
|
|
||||||
list_for_each_entry_safe(event, tmp, cb_list, entry) {
|
list_for_each_entry_safe(event, tmp, cb_list, entry) {
|
||||||
fn = event->function;
|
fn = event->function;
|
||||||
|
@ -244,7 +244,6 @@ static void do_callbacks(struct list_head *cb_list)
|
||||||
*/
|
*/
|
||||||
static void do_cpu_timer_interrupt(__u16 error_code)
|
static void do_cpu_timer_interrupt(__u16 error_code)
|
||||||
{
|
{
|
||||||
int cpu;
|
|
||||||
__u64 next, delta;
|
__u64 next, delta;
|
||||||
struct vtimer_queue *vt_list;
|
struct vtimer_queue *vt_list;
|
||||||
struct vtimer_list *event, *tmp;
|
struct vtimer_list *event, *tmp;
|
||||||
|
@ -253,8 +252,7 @@ static void do_cpu_timer_interrupt(__u16 error_code)
|
||||||
struct list_head cb_list;
|
struct list_head cb_list;
|
||||||
|
|
||||||
INIT_LIST_HEAD(&cb_list);
|
INIT_LIST_HEAD(&cb_list);
|
||||||
cpu = smp_processor_id();
|
vt_list = &__get_cpu_var(virt_cpu_timer);
|
||||||
vt_list = &per_cpu(virt_cpu_timer, cpu);
|
|
||||||
|
|
||||||
/* walk timer list, fire all expired events */
|
/* walk timer list, fire all expired events */
|
||||||
spin_lock(&vt_list->lock);
|
spin_lock(&vt_list->lock);
|
||||||
|
@ -534,7 +532,7 @@ void init_cpu_vtimer(void)
|
||||||
/* enable cpu timer interrupts */
|
/* enable cpu timer interrupts */
|
||||||
__ctl_set_bit(0,10);
|
__ctl_set_bit(0,10);
|
||||||
|
|
||||||
vt_list = &per_cpu(virt_cpu_timer, smp_processor_id());
|
vt_list = &__get_cpu_var(virt_cpu_timer);
|
||||||
INIT_LIST_HEAD(&vt_list->list);
|
INIT_LIST_HEAD(&vt_list->list);
|
||||||
spin_lock_init(&vt_list->lock);
|
spin_lock_init(&vt_list->lock);
|
||||||
vt_list->to_expire = 0;
|
vt_list->to_expire = 0;
|
||||||
|
|
Loading…
Reference in New Issue