Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

watchdog: Replace __raw_get_cpu_var uses

Most of these are the uses of &__raw_get_cpu_var for address calculation.

touch_softlockup_watchdog_sync() uses __raw_get_cpu_var to write to
per cpu variables. Use __this_cpu_write instead.

Cc: Wim Van Sebroeck <wim@iguana.be>
Cc: linux-watchdog@vger.kernel.org
Signed-off-by: Christoph Lameter <cl@linux.com>
Signed-off-by: Tejun Heo <tj@kernel.org>

authored by

Christoph Lameter and committed by
Tejun Heo
f7f66b05 70b2776a

+6 -6
+6 -6
kernel/watchdog.c
··· 185 185 * case we shouldn't have to worry about the watchdog 186 186 * going off. 187 187 */ 188 - __raw_get_cpu_var(watchdog_nmi_touch) = true; 188 + raw_cpu_write(watchdog_nmi_touch, true); 189 189 touch_softlockup_watchdog(); 190 190 } 191 191 EXPORT_SYMBOL(touch_nmi_watchdog); ··· 194 194 195 195 void touch_softlockup_watchdog_sync(void) 196 196 { 197 - __raw_get_cpu_var(softlockup_touch_sync) = true; 198 - __raw_get_cpu_var(watchdog_touch_ts) = 0; 197 + __this_cpu_write(softlockup_touch_sync, true); 198 + __this_cpu_write(watchdog_touch_ts, 0); 199 199 } 200 200 201 201 #ifdef CONFIG_HARDLOCKUP_DETECTOR ··· 387 387 388 388 static void watchdog_enable(unsigned int cpu) 389 389 { 390 - struct hrtimer *hrtimer = &__raw_get_cpu_var(watchdog_hrtimer); 390 + struct hrtimer *hrtimer = raw_cpu_ptr(&watchdog_hrtimer); 391 391 392 392 /* kick off the timer for the hardlockup detector */ 393 393 hrtimer_init(hrtimer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); ··· 407 407 408 408 static void watchdog_disable(unsigned int cpu) 409 409 { 410 - struct hrtimer *hrtimer = &__raw_get_cpu_var(watchdog_hrtimer); 410 + struct hrtimer *hrtimer = raw_cpu_ptr(&watchdog_hrtimer); 411 411 412 412 watchdog_set_prio(SCHED_NORMAL, 0); 413 413 hrtimer_cancel(hrtimer); ··· 534 534 535 535 static void restart_watchdog_hrtimer(void *info) 536 536 { 537 - struct hrtimer *hrtimer = &__raw_get_cpu_var(watchdog_hrtimer); 537 + struct hrtimer *hrtimer = raw_cpu_ptr(&watchdog_hrtimer); 538 538 int ret; 539 539 540 540 /*