Re: Unknown HZ value! (1908) Assume 1024.

Tom Holroyd (tomh@po.crl.go.jp)
Wed, 20 Feb 2002 11:10:45 +0900 (JST)


> |> jif * smp_num_cpus - (user + nice + system)
>
> Changing the line to this:
>
> jif * smp_num_cpus - user - nice - system
>
> should avoid the overflow.

True. It still might be a good idea to make them longs, though,
because they are really totals of all the CPUs, as in:
user += kstat.per_cpu_user[cpu];

Now ultimately, kstat.per_cpu_user[cpu] will overflow, and I don't
know what to do about that, but making user, nice, and system unsigned
long will at least allow SMP systems to last a little while longer.
(Actually I don't know why Procps needs these values at all -- the
claim in the code is that all of this is just to compute the HZ value,
which is presumably needed to be able to interpret jiffies. It'd be a
lot simpler just to have /proc/stat export the HZ value directly.)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/