On May 7, 2015, at 2:47 AM, Michael Tokarev wrote:

> 07.05.2015 09:12, Michael Tokarev wrote:
>> 07.05.2015 04:11, G 3 wrote:
>>> Did you boot Windows XP to the desktop? I have tested Windows 95, Windows 
>>> 2000, and Windows XP. All of them fail to boot to the desktop.
>> 
>> Yes, booted to desktop and did some minimal work in there,
>> installnig one update or two.
>> 
>>> Command used:
>>> ./i386-softmmu/qemu-system-i386 -boot c -hda "Windows XP Hard Drive.img" 
>> 
>> Aha. You run without kvm, in tcg mode.  I don't usually do that,
>> lemme try...
> 
> Ok, I can reproduce this, winXP BSODs on boot in tcg mode.
> Git bisect points to this:
> 
> commit 23820dbfc79d1c9dce090b4c555994f2bb6a69b3
> Author: Peter Crosthwaite <peter.crosthwa...@xilinx.com>
> Date:   Mon Mar 16 22:35:54 2015 -0700
> 
>    exec: Respect as_translate_internal length clamp
> 
>    address_space_translate_internal will clamp the *plen length argument
>    based on the size of the memory region being queried. The iommu walker
>    logic in addresss_space_translate was ignoring this by discarding the
>    post fn call value of *plen. Fix by just always using *plen as the
>    length argument throughout the fn, removing the len local variable.
> 
>    This fixes a bootloader bug when a single elf section spans multiple
>    QEMU memory regions.
> 
>    Signed-off-by: Peter Crosthwaite <peter.crosthwa...@xilinx.com>
>    Message-Id: 
> <1426570554-15940-1-git-send-email-peter.crosthwa...@xilinx.com>
>    Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
> 
> Cc'ing relevant people.
> 
> /mjt

Thank you very much for solving this issue.

Reply via email to