|
@@ -205,7 +205,7 @@ static void tick_nohz_restart_sched_tick(struct tick_sched *ts, ktime_t now);
|
|
|
*/
|
|
|
void __tick_nohz_full_check(void)
|
|
|
{
|
|
|
- struct tick_sched *ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
|
|
|
if (tick_nohz_full_cpu(smp_processor_id())) {
|
|
|
if (ts->tick_stopped && !is_idle_task(current)) {
|
|
@@ -545,7 +545,7 @@ static ktime_t tick_nohz_stop_sched_tick(struct tick_sched *ts,
|
|
|
unsigned long seq, last_jiffies, next_jiffies, delta_jiffies;
|
|
|
ktime_t last_update, expires, ret = { .tv64 = 0 };
|
|
|
unsigned long rcu_delta_jiffies;
|
|
|
- struct clock_event_device *dev = __get_cpu_var(tick_cpu_device).evtdev;
|
|
|
+ struct clock_event_device *dev = __this_cpu_read(tick_cpu_device.evtdev);
|
|
|
u64 time_delta;
|
|
|
|
|
|
time_delta = timekeeping_max_deferment();
|
|
@@ -813,7 +813,7 @@ void tick_nohz_idle_enter(void)
|
|
|
|
|
|
local_irq_disable();
|
|
|
|
|
|
- ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
ts->inidle = 1;
|
|
|
__tick_nohz_idle_enter(ts);
|
|
|
|
|
@@ -831,7 +831,7 @@ EXPORT_SYMBOL_GPL(tick_nohz_idle_enter);
|
|
|
*/
|
|
|
void tick_nohz_irq_exit(void)
|
|
|
{
|
|
|
- struct tick_sched *ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
|
|
|
if (ts->inidle)
|
|
|
__tick_nohz_idle_enter(ts);
|
|
@@ -846,7 +846,7 @@ void tick_nohz_irq_exit(void)
|
|
|
*/
|
|
|
ktime_t tick_nohz_get_sleep_length(void)
|
|
|
{
|
|
|
- struct tick_sched *ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
|
|
|
return ts->sleep_length;
|
|
|
}
|
|
@@ -959,7 +959,7 @@ static int tick_nohz_reprogram(struct tick_sched *ts, ktime_t now)
|
|
|
*/
|
|
|
static void tick_nohz_handler(struct clock_event_device *dev)
|
|
|
{
|
|
|
- struct tick_sched *ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
struct pt_regs *regs = get_irq_regs();
|
|
|
ktime_t now = ktime_get();
|
|
|
|
|
@@ -979,7 +979,7 @@ static void tick_nohz_handler(struct clock_event_device *dev)
|
|
|
*/
|
|
|
static void tick_nohz_switch_to_nohz(void)
|
|
|
{
|
|
|
- struct tick_sched *ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
ktime_t next;
|
|
|
|
|
|
if (!tick_nohz_enabled)
|
|
@@ -1115,7 +1115,7 @@ early_param("skew_tick", skew_tick);
|
|
|
*/
|
|
|
void tick_setup_sched_timer(void)
|
|
|
{
|
|
|
- struct tick_sched *ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
ktime_t now = ktime_get();
|
|
|
|
|
|
/*
|
|
@@ -1184,7 +1184,7 @@ void tick_clock_notify(void)
|
|
|
*/
|
|
|
void tick_oneshot_notify(void)
|
|
|
{
|
|
|
- struct tick_sched *ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
|
|
|
set_bit(0, &ts->check_clocks);
|
|
|
}
|
|
@@ -1199,7 +1199,7 @@ void tick_oneshot_notify(void)
|
|
|
*/
|
|
|
int tick_check_oneshot_change(int allow_nohz)
|
|
|
{
|
|
|
- struct tick_sched *ts = &__get_cpu_var(tick_cpu_sched);
|
|
|
+ struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched);
|
|
|
|
|
|
if (!test_and_clear_bit(0, &ts->check_clocks))
|
|
|
return 0;
|