Bug 702764 part 1 - Use RUSAGE_THREAD for library loading time consumption reporting. r=tglek

This commit is contained in:
Mike Hommey 2011-11-18 08:54:17 +01:00
parent 60fc8f08fb
commit 50a0f04721

View File

@ -62,6 +62,11 @@
#include <sys/time.h>
#include <sys/resource.h>
/* Android headers don't define RUSAGE_THREAD */
#ifndef RUSAGE_THREAD
#define RUSAGE_THREAD 1
#endif
/* compression methods */
#define STORE 0
#define DEFLATE 8
@ -580,7 +585,7 @@ loadLibs(const char *apkName)
struct timeval t0, t1;
gettimeofday(&t0, 0);
struct rusage usage1;
getrusage(RUSAGE_SELF, &usage1);
getrusage(RUSAGE_THREAD, &usage1);
void *zip = map_file(apkName);
struct cdir_end *dirend = (struct cdir_end *)((char *)zip + zip_size - sizeof(*dirend));
@ -647,7 +652,7 @@ loadLibs(const char *apkName)
#undef GETFUNC
gettimeofday(&t1, 0);
struct rusage usage2;
getrusage(RUSAGE_SELF, &usage2);
getrusage(RUSAGE_THREAD, &usage2);
__android_log_print(ANDROID_LOG_ERROR, "GeckoLibLoad", "Loaded libs in %dms total, %dms user, %dms system, %d faults",
(t1.tv_sec - t0.tv_sec)*1000 + (t1.tv_usec - t0.tv_usec)/1000,
(usage2.ru_utime.tv_sec - usage1.ru_utime.tv_sec)*1000 + (usage2.ru_utime.tv_usec - usage1.ru_utime.tv_usec)/1000,