diff options
Diffstat (limited to 'kernel/sched.c')
-rw-r--r-- | kernel/sched.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index e5205811c19e..67be4d0dddaa 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -5017,8 +5017,13 @@ static void account_guest_time(struct task_struct *p, cputime_t cputime, | |||
5017 | p->gtime = cputime_add(p->gtime, cputime); | 5017 | p->gtime = cputime_add(p->gtime, cputime); |
5018 | 5018 | ||
5019 | /* Add guest time to cpustat. */ | 5019 | /* Add guest time to cpustat. */ |
5020 | cpustat->user = cputime64_add(cpustat->user, tmp); | 5020 | if (TASK_NICE(p) > 0) { |
5021 | cpustat->guest = cputime64_add(cpustat->guest, tmp); | 5021 | cpustat->nice = cputime64_add(cpustat->nice, tmp); |
5022 | cpustat->guest_nice = cputime64_add(cpustat->guest_nice, tmp); | ||
5023 | } else { | ||
5024 | cpustat->user = cputime64_add(cpustat->user, tmp); | ||
5025 | cpustat->guest = cputime64_add(cpustat->guest, tmp); | ||
5026 | } | ||
5022 | } | 5027 | } |
5023 | 5028 | ||
5024 | /* | 5029 | /* |