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.