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