|
@@ -103,14 +103,14 @@ static inline tvec_base_t *tbase_get_base(tvec_base_t *base)
|
|
static inline void timer_set_deferrable(struct timer_list *timer)
|
|
static inline void timer_set_deferrable(struct timer_list *timer)
|
|
{
|
|
{
|
|
timer->base = ((tvec_base_t *)((unsigned long)(timer->base) |
|
|
timer->base = ((tvec_base_t *)((unsigned long)(timer->base) |
|
|
- TBASE_DEFERRABLE_FLAG));
|
|
|
|
|
|
+ TBASE_DEFERRABLE_FLAG));
|
|
}
|
|
}
|
|
|
|
|
|
static inline void
|
|
static inline void
|
|
timer_set_base(struct timer_list *timer, tvec_base_t *new_base)
|
|
timer_set_base(struct timer_list *timer, tvec_base_t *new_base)
|
|
{
|
|
{
|
|
timer->base = (tvec_base_t *)((unsigned long)(new_base) |
|
|
timer->base = (tvec_base_t *)((unsigned long)(new_base) |
|
|
- tbase_get_deferrable(timer->base));
|
|
|
|
|
|
+ tbase_get_deferrable(timer->base));
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -445,10 +445,10 @@ EXPORT_SYMBOL(__mod_timer);
|
|
void add_timer_on(struct timer_list *timer, int cpu)
|
|
void add_timer_on(struct timer_list *timer, int cpu)
|
|
{
|
|
{
|
|
tvec_base_t *base = per_cpu(tvec_bases, cpu);
|
|
tvec_base_t *base = per_cpu(tvec_bases, cpu);
|
|
- unsigned long flags;
|
|
|
|
|
|
+ unsigned long flags;
|
|
|
|
|
|
timer_stats_timer_set_start_info(timer);
|
|
timer_stats_timer_set_start_info(timer);
|
|
- BUG_ON(timer_pending(timer) || !timer->function);
|
|
|
|
|
|
+ BUG_ON(timer_pending(timer) || !timer->function);
|
|
spin_lock_irqsave(&base->lock, flags);
|
|
spin_lock_irqsave(&base->lock, flags);
|
|
timer_set_base(timer, base);
|
|
timer_set_base(timer, base);
|
|
internal_add_timer(base, timer);
|
|
internal_add_timer(base, timer);
|
|
@@ -627,7 +627,7 @@ static inline void __run_timers(tvec_base_t *base)
|
|
while (time_after_eq(jiffies, base->timer_jiffies)) {
|
|
while (time_after_eq(jiffies, base->timer_jiffies)) {
|
|
struct list_head work_list;
|
|
struct list_head work_list;
|
|
struct list_head *head = &work_list;
|
|
struct list_head *head = &work_list;
|
|
- int index = base->timer_jiffies & TVR_MASK;
|
|
|
|
|
|
+ int index = base->timer_jiffies & TVR_MASK;
|
|
|
|
|
|
/*
|
|
/*
|
|
* Cascade timers:
|
|
* Cascade timers:
|
|
@@ -644,8 +644,8 @@ static inline void __run_timers(tvec_base_t *base)
|
|
unsigned long data;
|
|
unsigned long data;
|
|
|
|
|
|
timer = list_first_entry(head, struct timer_list,entry);
|
|
timer = list_first_entry(head, struct timer_list,entry);
|
|
- fn = timer->function;
|
|
|
|
- data = timer->data;
|
|
|
|
|
|
+ fn = timer->function;
|
|
|
|
+ data = timer->data;
|
|
|
|
|
|
timer_stats_account_timer(timer);
|
|
timer_stats_account_timer(timer);
|
|
|
|
|
|
@@ -689,8 +689,8 @@ static unsigned long __next_timer_interrupt(tvec_base_t *base)
|
|
index = slot = timer_jiffies & TVR_MASK;
|
|
index = slot = timer_jiffies & TVR_MASK;
|
|
do {
|
|
do {
|
|
list_for_each_entry(nte, base->tv1.vec + slot, entry) {
|
|
list_for_each_entry(nte, base->tv1.vec + slot, entry) {
|
|
- if (tbase_get_deferrable(nte->base))
|
|
|
|
- continue;
|
|
|
|
|
|
+ if (tbase_get_deferrable(nte->base))
|
|
|
|
+ continue;
|
|
|
|
|
|
found = 1;
|
|
found = 1;
|
|
expires = nte->expires;
|
|
expires = nte->expires;
|
|
@@ -834,7 +834,7 @@ void update_process_times(int user_tick)
|
|
if (rcu_pending(cpu))
|
|
if (rcu_pending(cpu))
|
|
rcu_check_callbacks(cpu, user_tick);
|
|
rcu_check_callbacks(cpu, user_tick);
|
|
scheduler_tick();
|
|
scheduler_tick();
|
|
- run_posix_cpu_timers(p);
|
|
|
|
|
|
+ run_posix_cpu_timers(p);
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -909,7 +909,7 @@ static inline void update_times(unsigned long ticks)
|
|
update_wall_time();
|
|
update_wall_time();
|
|
calc_load(ticks);
|
|
calc_load(ticks);
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
/*
|
|
/*
|
|
* The 64-bit jiffies value is not atomic - you MUST NOT read it
|
|
* The 64-bit jiffies value is not atomic - you MUST NOT read it
|
|
* without sampling the sequence number in xtime_lock.
|
|
* without sampling the sequence number in xtime_lock.
|
|
@@ -1105,7 +1105,7 @@ asmlinkage long sys_gettid(void)
|
|
/**
|
|
/**
|
|
* do_sysinfo - fill in sysinfo struct
|
|
* do_sysinfo - fill in sysinfo struct
|
|
* @info: pointer to buffer to fill
|
|
* @info: pointer to buffer to fill
|
|
- */
|
|
|
|
|
|
+ */
|
|
int do_sysinfo(struct sysinfo *info)
|
|
int do_sysinfo(struct sysinfo *info)
|
|
{
|
|
{
|
|
unsigned long mem_total, sav_total;
|
|
unsigned long mem_total, sav_total;
|