diff options
| author | Poul-Henning Kamp <phk@FreeBSD.org> | 2006-03-09 09:33:17 +0000 |
|---|---|---|
| committer | Poul-Henning Kamp <phk@FreeBSD.org> | 2006-03-09 09:33:17 +0000 |
| commit | 0f038c05eaecfe788bdc0cce05071c7593bd4b96 (patch) | |
| tree | 194b2772e9b492c453bad4dce6c08196e14f9b9e /sys/kern/kern_resource.c | |
| parent | 6cda760f09d1486cb72c8f9dca51d7de0cc81539 (diff) | |
Notes
Diffstat (limited to 'sys/kern/kern_resource.c')
| -rw-r--r-- | sys/kern/kern_resource.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/kern/kern_resource.c b/sys/kern/kern_resource.c index 16d1d5c937fc..b527f14ffd7a 100644 --- a/sys/kern/kern_resource.c +++ b/sys/kern/kern_resource.c @@ -779,7 +779,11 @@ calcru1(struct proc *p, struct rusage_ext *ruxp, struct timeval *up, uu = (tu * ut) / tt; su = (tu * st) / tt; iu = tu - uu - su; - if (tu < ptu) { + if (tu + 3 > ptu) { + /* Numeric slop for low counts */ + } else if (101 * tu > 100 * ptu) { + /* 1% slop for large counts */ + } else { printf( "calcru: runtime went backwards from %ju usec to %ju usec for pid %d (%s)\n", (uintmax_t)ptu, (uintmax_t)tu, p->p_pid, p->p_comm); |
