Re: [PATCH v2] sched: fix user time incorrectly accounted assystem time on 32 bit

From: Peter Zijlstra
Date: Tue Sep 14 2010 - 10:37:55 EST


On Tue, 2010-09-14 at 16:35 +0200, Stanislaw Gruszka wrote:
> We have 32 bit variable overflow possibility when multiply in
> task_times() and thread_group_times() functions. If overflow happens
> calculated scaled utime value become wrongly small and scaled stime
> wrongly big.

Ah, right, (u64)foo * bar would have worked too I guess, but yeah, the
used (u64)(foo * bar) is wrong.

> Reported here:
> https://bugzilla.redhat.com/show_bug.cgi?id=633037
> https://bugzilla.kernel.org/show_bug.cgi?id=16559
>
> Reported-by: Michael Chapman <redhat-bugzilla@xxxxxxxxxxxxxxxxx>
> Reported-by: Ciriaco Garcia de Celis <sysman@xxxxxxxxxxxxxx>
> Cc: Hidetoshi Seto <seto.hidetoshi@xxxxxxxxxxxxxx>
> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> Cc: <stable@xxxxxxxxxx> # 2.6.32.19+ (partially) and 2.6.33+
> Signed-off-by: Stanislaw Gruszka <sgruszka@xxxxxxxxxx>

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