diff options
Diffstat (limited to 'miscutils')
| -rw-r--r-- | miscutils/time.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/miscutils/time.c b/miscutils/time.c index 578cb35ff..9b7db662a 100644 --- a/miscutils/time.c +++ b/miscutils/time.c | |||
| @@ -180,7 +180,12 @@ static void summarize(const char *fmt, char **command, resource_t * resp) | |||
| 180 | vv_ms = (resp->ru.ru_utime.tv_sec + resp->ru.ru_stime.tv_sec) * 1000 | 180 | vv_ms = (resp->ru.ru_utime.tv_sec + resp->ru.ru_stime.tv_sec) * 1000 |
| 181 | + (resp->ru.ru_utime.tv_usec + resp->ru.ru_stime.tv_usec) / 1000; | 181 | + (resp->ru.ru_utime.tv_usec + resp->ru.ru_stime.tv_usec) / 1000; |
| 182 | 182 | ||
| 183 | cpu_ticks = vv_ms * TICKS_PER_SEC / 1000; | 183 | #if (1000 / TICKS_PER_SEC) * TICKS_PER_SEC == 1000 |
| 184 | /* 1000 is exactly divisible by TICKS_PER_SEC */ | ||
| 185 | cpu_ticks = vv_ms / (1000 / TICKS_PER_SEC); | ||
| 186 | #else | ||
| 187 | cpu_ticks = vv_ms * (unsigned long long)TICKS_PER_SEC / 1000; | ||
| 188 | #endif | ||
| 184 | if (!cpu_ticks) cpu_ticks = 1; /* we divide by it, must be nonzero */ | 189 | if (!cpu_ticks) cpu_ticks = 1; /* we divide by it, must be nonzero */ |
| 185 | 190 | ||
| 186 | /* putchar() != putc(stdout) in glibc! */ | 191 | /* putchar() != putc(stdout) in glibc! */ |
