aboutsummaryrefslogtreecommitdiffstats
path: root/fs/proc
diff options
context:
space:
mode:
Diffstat (limited to 'fs/proc')
-rw-r--r--fs/proc/array.c5
-rw-r--r--fs/proc/proc_misc.c6
2 files changed, 6 insertions, 5 deletions
diff --git a/fs/proc/array.c b/fs/proc/array.c
index 98e78e2f18d6..680c913575f0 100644
--- a/fs/proc/array.c
+++ b/fs/proc/array.c
@@ -440,8 +440,9 @@ static int do_task_stat(struct task_struct *task, char * buffer, int whole)
440 440
441 /* Temporary variable needed for gcc-2.96 */ 441 /* Temporary variable needed for gcc-2.96 */
442 /* convert timespec -> nsec*/ 442 /* convert timespec -> nsec*/
443 start_time = (unsigned long long)task->start_time.tv_sec * NSEC_PER_SEC 443 start_time =
444 + task->start_time.tv_nsec; 444 (unsigned long long)task->real_start_time.tv_sec * NSEC_PER_SEC
445 + task->real_start_time.tv_nsec;
445 /* convert nsec -> ticks */ 446 /* convert nsec -> ticks */
446 start_time = nsec_to_clock_t(start_time); 447 start_time = nsec_to_clock_t(start_time);
447 448
diff --git a/fs/proc/proc_misc.c b/fs/proc/proc_misc.c
index 5fd49e47f83a..19c9cbf1c320 100644
--- a/fs/proc/proc_misc.c
+++ b/fs/proc/proc_misc.c
@@ -443,12 +443,12 @@ static int show_stat(struct seq_file *p, void *v)
443 unsigned long jif; 443 unsigned long jif;
444 cputime64_t user, nice, system, idle, iowait, irq, softirq, steal; 444 cputime64_t user, nice, system, idle, iowait, irq, softirq, steal;
445 u64 sum = 0; 445 u64 sum = 0;
446 struct timespec boottime;
446 447
447 user = nice = system = idle = iowait = 448 user = nice = system = idle = iowait =
448 irq = softirq = steal = cputime64_zero; 449 irq = softirq = steal = cputime64_zero;
449 jif = - wall_to_monotonic.tv_sec; 450 getboottime(&boottime);
450 if (wall_to_monotonic.tv_nsec) 451 jif = boottime.tv_sec;
451 --jif;
452 452
453 for_each_possible_cpu(i) { 453 for_each_possible_cpu(i) {
454 int j; 454 int j;