Subject: [PATCH 01/31] kernel misc: Replace __get_cpu_var uses

Replace uses of __get_cpu_var for address calculation with this_cpu_ptr.

Cc: [email protected]
Signed-off-by: Christoph Lameter <[email protected]>

Index: linux/kernel/printk/printk.c
===================================================================
--- linux.orig/kernel/printk/printk.c 2014-06-16 09:11:49.095901488 -0500
+++ linux/kernel/printk/printk.c 2014-06-16 09:11:49.091901567 -0500
@@ -2578,7 +2578,7 @@
preempt_disable();
if (waitqueue_active(&log_wait)) {
this_cpu_or(printk_pending, PRINTK_PENDING_WAKEUP);
- irq_work_queue(&__get_cpu_var(wake_up_klogd_work));
+ irq_work_queue(this_cpu_ptr(&wake_up_klogd_work));
}
preempt_enable();
}
@@ -2594,7 +2594,7 @@
va_end(args);

__this_cpu_or(printk_pending, PRINTK_PENDING_OUTPUT);
- irq_work_queue(&__get_cpu_var(wake_up_klogd_work));
+ irq_work_queue(this_cpu_ptr(&wake_up_klogd_work));
preempt_enable();

return r;
Index: linux/kernel/smp.c
===================================================================
--- linux.orig/kernel/smp.c 2014-06-16 09:11:49.095901488 -0500
+++ linux/kernel/smp.c 2014-06-16 09:11:49.091901567 -0500
@@ -146,7 +146,7 @@
if (!csd) {
csd = &csd_stack;
if (!wait)
- csd = &__get_cpu_var(csd_data);
+ csd = this_cpu_ptr(&csd_data);
}

csd_lock(csd);
@@ -187,7 +187,7 @@
struct call_single_data *csd, *csd_next;
static bool warned;

- entry = llist_del_all(&__get_cpu_var(call_single_queue));
+ entry = llist_del_all(this_cpu_ptr(&call_single_queue));
entry = llist_reverse_order(entry);

/*
@@ -369,7 +369,7 @@
return;
}

- cfd = &__get_cpu_var(cfd_data);
+ cfd = this_cpu_ptr(&cfd_data);

cpumask_and(cfd->cpumask, mask, cpu_online_mask);
cpumask_clear_cpu(this_cpu, cfd->cpumask);


2014-07-18 23:27:04

by Tejun Heo

[permalink] [raw]
Subject: Re: [PATCH 01/31] kernel misc: Replace __get_cpu_var uses

On Fri, Jun 20, 2014 at 02:31:16PM -0500, Christoph Lameter wrote:
> Replace uses of __get_cpu_var for address calculation with this_cpu_ptr.
>
> Cc: [email protected]
> Signed-off-by: Christoph Lameter <[email protected]>

Applied to wq/for-3.17-consistent-ops.

Thanks.

--
tejun