aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/sched.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/sched.c')
-rw-r--r--kernel/sched.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/kernel/sched.c b/kernel/sched.c
index 9cdedbd181ce..14a19b17674e 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -4728,7 +4728,7 @@ void account_process_tick(struct task_struct *p, int user_tick)
4728 4728
4729 if (user_tick) 4729 if (user_tick)
4730 account_user_time(p, one_jiffy, one_jiffy_scaled); 4730 account_user_time(p, one_jiffy, one_jiffy_scaled);
4731 else if (p != rq->idle) 4731 else if ((p != rq->idle) || (irq_count() != HARDIRQ_OFFSET))
4732 account_system_time(p, HARDIRQ_OFFSET, one_jiffy, 4732 account_system_time(p, HARDIRQ_OFFSET, one_jiffy,
4733 one_jiffy_scaled); 4733 one_jiffy_scaled);
4734 else 4734 else
@@ -4842,7 +4842,7 @@ void scheduler_tick(void)
4842#endif 4842#endif
4843} 4843}
4844 4844
4845unsigned long get_parent_ip(unsigned long addr) 4845notrace unsigned long get_parent_ip(unsigned long addr)
4846{ 4846{
4847 if (in_lock_functions(addr)) { 4847 if (in_lock_functions(addr)) {
4848 addr = CALLER_ADDR2; 4848 addr = CALLER_ADDR2;
@@ -7363,8 +7363,12 @@ static int sched_domain_debug_one(struct sched_domain *sd, int cpu, int level,
7363 cpumask_or(groupmask, groupmask, sched_group_cpus(group)); 7363 cpumask_or(groupmask, groupmask, sched_group_cpus(group));
7364 7364
7365 cpulist_scnprintf(str, sizeof(str), sched_group_cpus(group)); 7365 cpulist_scnprintf(str, sizeof(str), sched_group_cpus(group));
7366 printk(KERN_CONT " %s (__cpu_power = %d)", str, 7366
7367 group->__cpu_power); 7367 printk(KERN_CONT " %s", str);
7368 if (group->__cpu_power != SCHED_LOAD_SCALE) {
7369 printk(KERN_CONT " (__cpu_power = %d)",
7370 group->__cpu_power);
7371 }
7368 7372
7369 group = group->next; 7373 group = group->next;
7370 } while (group != sd->groups); 7374 } while (group != sd->groups);