qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [Bug 586175] Re: Windows XP/2003 doesn't boot


From: Cole Robinson
Subject: [Qemu-devel] [Bug 586175] Re: Windows XP/2003 doesn't boot
Date: Fri, 25 Jun 2010 15:55:06 -0000

I can reproduce with qemu-kvm 0.12.4 like the original reporter. I
cannot reproduce with qemu-kvm upstream, qemu stable, or qemu upstream.
So boot=on could be the culprit. Libvirt generated command line:

LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/bin
/qemu-system-x86_64 -S -M pc-0.12 -no-kvm -m 512 -smp
1,sockets=1,cores=1,threads=1 -name winxp_test -uuid 634dff56-8c5a-fdbb-
b5fc-091bcf78e586 -nodefaults -chardev
socket,id=monitor,path=/var/lib/libvirt/qemu/winxp_test.monitor,server,nowait
-mon chardev=monitor,mode=readline -rtc base=localtime -boot c -drive
file=/var/lib/libvirt/images/winxp_test.img,if=none,id=drive-
ide0-0-0,boot=on,format=raw -device ide-drive,bus=ide.0,unit=0,drive
=drive-ide0-0-0,id=ide0-0-0 -drive
file=/mnt/data/media/win_xp_sp3_32.iso,if=none,media=cdrom,id=drive-
ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive
=drive-ide0-1-0,id=ide0-1-0 -device
rtl8139,vlan=0,id=net0,mac=52:54:00:ac:e8:ca,bus=pci.0,addr=0x4 -net
tap,fd=20,vlan=0,name=hostnet0 -chardev pty,id=serial0 -device isa-
serial,chardev=serial0 -usb -device usb-tablet,id=input0 -vnc
127.0.0.1:1 -k en-us -vga std -device virtio-balloon-
pci,id=balloon0,bus=pci.0,addr=0x3

Markus has a patch internally against an older qemu-kvm release that
apparently fixes the issue, however the upstream code is different so it
doesn't cleanly apply. Maybe this will give someone a hint for a proper
upstream solution:

 hw/pc.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/hw/pc.c b/hw/pc.c
index d142282..c60a79a 100644
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -271,12 +271,16 @@ static void cmos_init(ram_addr_t ram_size, ram_addr_t 
above_4g_mem_size,
      */
     for (i = 0; i < 4; i++) {
         char id[32];
+        int cylinders, heads, secs;
 
         if (hd_table[i])
             continue;
         snprintf(id, sizeof(id), "drive-ide0-%d-%d",
                  i / MAX_IDE_DEVS, i % MAX_IDE_DEVS);
         hd_table[i] = drive_get_by_id(id);
+        if (hd_table[i]) {
+            bdrv_guess_geometry(hd_table[i]->bdrv, &cylinders, &heads, &secs);
+        }
     }
 
     /* various important CMOS locations needed by PC/Bochs bios */

-- 
Windows XP/2003 doesn't boot
https://bugs.launchpad.net/bugs/586175
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.

Status in QEMU: Incomplete
Status in Debian GNU/Linux: New
Status in Fedora: Unknown

Bug description:
Hello everyone,

my qemu doesn't boot any Windows XP/2003 installations if I try to boot the 
image.
If I boot the install cd first, it's boot manager counts down and triggers the 
boot on it's own. That's kinda stupid.

I'm using libvirt, but even by a simple
> qemu-kvm -drive file=image.img,media=disk,if=ide,boot=on
it won't boot. Qemu hangs at the message "Booting from Hard Disk..."

I'm using qemu-kvm-0.12.4 with SeaBIOS 0.5.1 on Gentoo (No-Multilib and AMD64). 
It's a server, that means I'm using VNC as the primary graphic output but i 
don't think it should be an issue.





reply via email to

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