diff --git a/src/plugins/jobacct/aix/jobacct_aix.c b/src/plugins/jobacct/aix/jobacct_aix.c
index 29092faa0990968c2bb1860e199ff8b2edfab689..20640ea2ba185d39cbd2b78e1dcda46b1b1138dc 100644
--- a/src/plugins/jobacct/aix/jobacct_aix.c
+++ b/src/plugins/jobacct/aix/jobacct_aix.c
@@ -350,10 +350,10 @@ static void _get_process_data()
 			proc.pi_ru.ru_stime.tv_usec * 1e-6;
 		prec->pages = proc.pi_majflt;
 		prec->rss = (proc.pi_trss + proc.pi_drss) * 4;
-		prec->rss *= 1024;
+		//prec->rss *= 1024;
 		prec->vsize = (proc.pi_tsize / 1024);
 		prec->vsize += (proc.pi_dvm * 4);
-		prec->vsize *= 1024;
+		//prec->vsize *= 1024;
 		/*  debug("vsize = %f = %d/1024+%d",  */
 /*  		      prec->vsize, proc.pi_tsize, proc.pi_dvm * 4); */
 	}
@@ -381,10 +381,11 @@ static void _get_process_data()
 				jobacct->max_vsize = jobacct->tot_vsize = 
 					MAX(jobacct->max_vsize, 
 					    (int)prec->vsize);
-				jobacct->max_pages = jobacct->tot_pages 
-					= MAX(jobacct->max_pages, prec->pages);
+				jobacct->max_pages = jobacct->tot_pages =
+					MAX(jobacct->max_pages, prec->pages);
 				jobacct->min_cpu = jobacct->tot_cpu = 
-					(prec->usec + prec->ssec);
+					MAX(jobacct->min_cpu,
+					    (prec->usec + prec->ssec));
 				debug2("%d size now %d %d time %d",
 				      jobacct->pid, jobacct->max_rss, 
 				      jobacct->max_vsize, jobacct->tot_cpu);
diff --git a/src/plugins/jobacct/common/jobacct_common.c b/src/plugins/jobacct/common/jobacct_common.c
index 1b73f38d6822bcb2d15b40a7dd3c8ac2c6038c6b..440db011af6670c798f35cfdef656c1fe17c5330 100644
--- a/src/plugins/jobacct/common/jobacct_common.c
+++ b/src/plugins/jobacct/common/jobacct_common.c
@@ -59,7 +59,7 @@ extern int common_init_struct(struct jobacctinfo *jobacct, uint16_t tid)
 	jobacct->max_pages = 0;
 	jobacct->max_pages_task = tid;
 	jobacct->tot_pages = 0;
-	jobacct->min_cpu = (uint32_t)NO_VAL;
+	jobacct->min_cpu = 0;
 	jobacct->min_cpu_task = tid;
 	jobacct->tot_cpu = 0;
 	
@@ -242,10 +242,7 @@ extern void common_aggregate(struct jobacctinfo *dest,
 	}
 	dest->tot_pages += from->tot_pages;
 	
-	if((dest->min_cpu > from->min_cpu) 
-	   || (dest->min_cpu == (uint32_t)NO_VAL)) {
-		if(from->min_cpu == (uint32_t)NO_VAL)
-			from->min_cpu = 0;
+	if((dest->min_cpu > from->min_cpu)) {
 		dest->min_cpu = from->min_cpu;
 		dest->min_cpu_task = from->min_cpu_task;
 	}
diff --git a/src/plugins/jobacct/linux/jobacct_linux.c b/src/plugins/jobacct/linux/jobacct_linux.c
index acff1f2b1d66415a3149056ac803ad273375105e..09f444c9750760953c61e92d4d109674f32365d2 100644
--- a/src/plugins/jobacct/linux/jobacct_linux.c
+++ b/src/plugins/jobacct/linux/jobacct_linux.c
@@ -406,10 +406,11 @@ static void _get_process_data() {
 					MAX(jobacct->max_rss, prec->rss);
 				jobacct->max_vsize = jobacct->tot_vsize = 
 					MAX(jobacct->max_vsize, prec->vsize);
-				jobacct->max_pages = jobacct->tot_pages 
-					= prec->pages;
+				jobacct->max_pages = jobacct->tot_pages =
+					MAX(jobacct->max_pages, prec->pages);
 				jobacct->min_cpu = jobacct->tot_cpu = 
-					prec->usec + prec->ssec;
+					MAX(jobacct->min_cpu, 
+					    (prec->usec + prec->ssec));
 				debug2("%d size now %d %d time %d",
 				      jobacct->pid, jobacct->max_rss, 
 				      jobacct->max_vsize, jobacct->tot_cpu);