From: Mikael Pettersson <redacted>
Date: Mon, 19 Jul 2010 23:58:42 +0200
The kernel's math-emu code contains a macro _FP_FROM_INT() which is
used to convert an integer to a raw normalized floating-point value.
It does this basically in three steps:
...
The fix is simple: the exponent comparison used to determine if the
fraction should be downshifted must be "<=" not "<".
I'm sending a kernel module to test this as a reply to this message.
There are also SPARC user-space test cases in the GCC bug entry.
Signed-off-by: Mikael Pettersson <redacted>
Applied and I'll make sure this gets into -stable too.
Thanks!