From 59917a149e53e2660ae94ad993d831ec6e6f1065 Mon Sep 17 00:00:00 2001 From: dwarning Date: Wed, 1 Apr 2009 19:33:38 +0000 Subject: [PATCH] init rusage --- src/frontend/resource.c | 17 ++++++++++++----- src/misc/misc_time.c | 9 +++++++-- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/src/frontend/resource.c b/src/frontend/resource.c index d13e39ea8..ed122b764 100644 --- a/src/frontend/resource.c +++ b/src/frontend/resource.c @@ -223,8 +223,12 @@ printres(char *name) #else # ifdef HAVE_GETRUSAGE - struct rusage ruse; - (void) getrusage(RUSAGE_SELF, &ruse); + int ret; + struct rusage ruse = {{NULL, NULL}}; + ret = getrusage(RUSAGE_SELF, &ruse); + if(ret == -1) { + perror("getrusage(): "); + } total = ruse.ru_utime.tv_sec + ruse.ru_stime.tv_sec; totalu = (ruse.ru_utime.tv_usec + ruse.ru_stime.tv_usec) / 1000; cpu_elapsed = "CPU"; @@ -386,9 +390,12 @@ printres(char *name) if (!name || eq(name, "faults")) { #ifdef HAVE_GETRUSAGE - struct rusage ruse; - - (void) getrusage(RUSAGE_SELF, &ruse); + int ret; + struct rusage ruse = {{NULL, NULL}}; + ret = getrusage(RUSAGE_SELF, &ruse); + if(ret == -1) { + perror("getrusage(): "); + } fprintf(cp_out, "%lu page faults, %lu vol + %lu invol = %lu context switches.\n", ruse.ru_majflt, ruse.ru_nvcsw, ruse.ru_nivcsw, diff --git a/src/misc/misc_time.c b/src/misc/misc_time.c index 16f7840b1..b93f88e97 100644 --- a/src/misc/misc_time.c +++ b/src/misc/misc_time.c @@ -98,12 +98,17 @@ double seconds(void) { #ifdef HAVE_GETRUSAGE - struct rusage ruse; + int ret; + struct rusage ruse = {{NULL, NULL}}; #ifdef PARALLEL_ARCH return (TCGTIME_()); #else - (void) getrusage(RUSAGE_SELF, &ruse); + ret = getrusage(RUSAGE_SELF, &ruse); + if(ret == -1) { + perror("getrusage(): "); + return 1; + } return ((double)ruse.ru_utime.tv_sec + (double) ruse.ru_utime.tv_usec / 1000000.0); #endif /* PARALLEL_ARCH */ #else