Underflow in system time reported by getrusage()

From: Ben Hutchings
Date: Thu Dec 29 2011 - 11:00:39 EST


On Tue, 2011-12-20 at 13:14 +0100, Vincent Lefevre wrote:
> Package: linux-2.6
> Version: 3.1.5-1
> Severity: minor
>
> I've had the following problem (under zsh-beta):
>
> ypig:~> time ./a.out 0.999
> ./a.out 0.999 2.87s user 18446744073.71s system -2147483648% cpu 2.902 total
>
> Of course, I can't reproduce it. I suppose this problem is quite rare
> and occurs under some particular conditions.

The value reported for system time looks close to the maximum possible
64-bit number of microseconds, presumably resulting from an underflow.

Looking at the Debian source package zsh-beta, version
4.3.15-dev-0+20111220-1, it appears to use getrusage() where available,
and doesn't appear to do any calculations that might cause such
underflow.

Ben.

> I've search on Google and could only find:
>
> http://ftp.zcu.cz/mirrors/linux/kernel/v2.6/snapshots/old/patch-2.6.25-git4.log
>
> which mentions a "very huge system time" problem on IA64 due to
> interrupts. This is unrelated, but could give an idea about a
> possible cause...
[...]

--
Ben Hutchings
Design a system any fool can use, and only a fool will want to use it.

Attachment: signature.asc
Description: This is a digitally signed message part