Aurelien Jarno a écrit : > Aurelien Jarno a écrit : >> Aurelien Jarno a écrit : >> >>> I have used QEMU CVS with a Debian Sid image. It basically works, I am >>> even able to login via SSH, but I have noticed two problems: >>> >>> - Some process hang, stay into "D" state and become unkillable. It seems >>> it can happen to all processes, but it is always reproducible with >>> uptime or top. I still don't know if it is a problem of the kernel or >>> if it comes from the emulation. >> This problem arise when using floating point instructions. It can be >> easily triggered by running the following testcase: >> >> #include <stdio.h> >> >> int main() >> { >> double a = 1.34; >> printf("%.2f", a); >> return 0; >> } >> > > This is actually not enough to trigger the bug. The testcase works if > the bug has already been trigger in another process before, for example > uptime. >
I finally found a testcase that trigger the bug in any case: #include <stdio.h> int main() { printf("%d %f\n", 7, 0.40); return 0; } The bug could also be trigger with sprintf(), so this is not directly related to I/O. It happens when printing an integer followed by a float, even when the two are printed in two different calls to printf(). -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' [EMAIL PROTECTED] | [EMAIL PROTECTED] `- people.debian.org/~aurel32 | www.aurel32.net