qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Native MinGW build crashes when partitioning hard disk


From: Stefan Weil
Subject: Re: [Qemu-devel] Native MinGW build crashes when partitioning hard disk in guest
Date: Sat, 01 Feb 2014 12:51:27 +0100
User-agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

Am 01.02.2014 11:47, schrieb Legorol:
> (I am reposting this as my first post seems to have fallen through the
> cracks.)
> 
> I am building the official Qemu 1.7.0 release from source natively under
> MinGW for myself. I execute the i386 target. Qemu starts fine, but it
> crashes when I try to partition a 2G hard disk under an MS-DOS 6.22
> guest. Details of the build and reproducing the crash are below.
> 
> The problem also occurs for me with the 1.6.2 release. The problem does
> not occur with these binaries from other people:
> Eric Lassauge's Qemu-1.6.0-windows.zip
> Prashant Satish's qemu-1.6.0-win32-sdl.tar.lzma
> Stefan Weil's qemu-w32-setup-20131128, qemu-w32-setup-20140118.exe
> 
> The problem does not occur when I add the --enable-debug flag to
> configure! Whatever optimisation is removed as a result seems to avoid
> the crash.
> 
> How can I troubleshoot what the problem is? What should I change about
> my build to solve the problem?
> 

Hi,

I assume that this is caused by a known problem with coroutines (which
are used by QEMU's block operations) for Windows. Any file operation can
cause that crash. See this discussion for details:

http://lists.nongnu.org/archive/html/qemu-devel/2013-09/msg04197.html

The problem is caused by buggy code produced by the MinGW compilers when
optimisation is enabled. There exist several workarounds which fix the
problem:

* disable optimisation for coroutine-win32.c (that's what --enable-debug
does)

* disable the coroutine pool

* modify the code of function qemu_coroutine_switch in coroutine-win32.c
  (that's what I use for my binaries)

Try this patch:

http://repo.or.cz/w/qemu/ar7.git/commitdiff/c777d5d62a729fd8b19847aaa0aad3d7a1f73f47

Regards
Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]