qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Compiling QEMU x86_64 for windows 64 bit


From: Stefan Weil
Subject: Re: [Qemu-devel] Compiling QEMU x86_64 for windows 64 bit
Date: Thu, 26 Sep 2013 23:13:58 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.0

Am 26.09.2013 21:05, schrieb Stefan Weil:
> Am 26.09.2013 13:23, schrieb Vikas Desai:
>> Hi,
>>
>> After some further testing I found that even the 32 bit binaries from
>> Stefan fail with the same error. I tried the 32 bit binaries from by
>> Eric Lassauge for version 1.6 and they work well. I have tried both 32
>> and 64 bit binaries from Stefan on 2 different environments, both
>> failing with same errors.
>>
>> When I just run the binaries with no disk image or any other options,
>> I get a proper window with the BIOS going through all drives looking
>> for a bootable device. Only when I have a valid executable image I get
>> the error. Also, in case of the test linux binary I get a kernel panic
>> on linux but qemu does not crash.
>>
>> What should I do further to debug this?
>>
>> Hi Stefan,
>>
>> Could you share what tools you use for the build? Any hints on what
>> more could I try?
>>
>> Thanks,
>> Vikas
> Hi Vikas,
>
> I also get the corouting assertion when I start my precompiled QEMU
> binary with an ISO image (Debian i386 netinstall).
> The error can be reproduced with Wine on Linux, too.
>
> There is no error when QEMU was configured with --enable-debug (which
> disables optimisation),
> nor is there an error when I just run the BIOS code (no disk, no cdrom).
> This explains why I did not
> notice the regression for Windows earlier.
>
> So we have to find the first version which shows that regression, either
> by testing older installers
> or by running git bisect.
>
> Cheers,
> Stefan

Summary:

Latest qemu-system-i386 for Windows fails with an assertion
(qemu-coroutine-lock.c:99)
if something more complex than the BIOS is executed. It works when it is
configured with
--enable-debug. This behaviour is identical for 32 bit and 64 bit
executables and can also
be reproduced using Wine. Older versions also fail, but with SIGSEGV
instead of an assertion.

This is the result of git bisect:

402397843e20e35d6cb7c80837c7cfdb19ede591 is the first bad commit
commit 402397843e20e35d6cb7c80837c7cfdb19ede591
Author: Paolo Bonzini <address@hidden>
Date: Tue Feb 19 11:59:09 2013 +0100

coroutine: move pooling to common code

The coroutine pool code is duplicated between the ucontext and
sigaltstack backends, and absent from the win32 backend. But the
code can be shared easily by moving it to qemu-coroutine.c.

Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>

When I configure latest QEMU with --disable-coroutine-pool, it works!

I'll build new installers with this option until there is a bug fix
available.

Thanks for your bug report.

Stefan




reply via email to

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