Am 09.05.2014 20:57, schrieb Stefan Hajnoczi: > On Thu, May 08, 2014 at 12:47:10PM +0400, Stanislav Vorobiov wrote: >> From: Sangho Park <sangho1206.p...@samsung.com> >> >> g_poll has a problem on Windows when using >> timeouts < 10ms, in glib/gpoll.c: >> >> /* If not, and we have a significant timeout, poll again with >> * timeout then. Note that this will return indication for only >> * one event, or only for messages. We ignore timeouts less than >> * ten milliseconds as they are mostly pointless on Windows, the >> * MsgWaitForMultipleObjectsEx() call will timeout right away >> * anyway. >> */ >> if (retval == 0 && (timeout == INFINITE || timeout >= 10)) >> retval = poll_rest (poll_msgs, handles, nhandles, fds, nfds, timeout); >> >> so whenever g_poll is called with timeout < 10ms it does >> a quick poll instead of wait, this causes significant performance >> degradation of QEMU, thus we should use WaitForMultipleObjectsEx >> directly >> >> Signed-off-by: Stanislav Vorobiov <s.vorob...@samsung.com> >> --- >> include/glib-compat.h | 9 +++- >> util/oslib-win32.c | 112 >> +++++++++++++++++++++++++++++++++++++++++++++++++ >> 2 files changed, 120 insertions(+), 1 deletion(-) > > Thanks, applied to my block tree: > https://github.com/stefanha/qemu/commits/block > > Stefan >
Hi, the patch breaks hard disk i/o: a 64 bit executable built with MinGW-w64 will no longer boot a ReactOS image (BIOS fails to detect a bootable disk). Booting a Linux CDROM seems to work and is indeed much faster. Regards Stefan