[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi
From: |
Laszlo Ersek \(Red Hat\) |
Subject: |
[Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi |
Date: |
Sat, 18 Jun 2016 21:45:24 -0000 |
... In addition to what I said above in comment #9 (which stands), the
technical problem with turning the memory allocation in question into
AcpiNVS type is that it would prevent *all* OSes from reusing the area.
It would prevent the Windows 7 memory manager from deallocating page #0
(thereby saving Windows 7 HAL's buttocks), correct, but the page would
also be lost for other, actually UEFI-abiding, OSes as well. That's a
way too high price to pay for bug-compatibility with Windows 7.
This is actually documented in the commit message of
https://github.com/tianocore/edk2/commit/90803342b1b6 . An excerpt:
The Int10h real-mode IVT entry is covered with a Boot Services Code page,
making that too unaccessible to the rest of edk2. (Thus UEFI guest OSes
different from the Windows 2008 family can reclaim the page. The Windows
2008 family accesses the page at zero regardless of the allocation type.)
This was in fact a difference between v1 and v2 of the patch. V1 used
EfiReservedMemoryType, but v2 changed that, so that no other OSes would
be punished. See esp. the Notes section of v2:
http://thread.gmane.org/gmane.comp.bios.tianocore.devel/7047
http://thread.gmane.org/gmane.comp.bios.tianocore.devel/7127
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1593605
Title:
windows2008r2 boot failed with uefi
Status in QEMU:
Invalid
Bug description:
I want to run my win2008r2 with uefi. Hypervisor is ubuntu16.04 and my
qemu command line show below:
qemu-system-x86_64 -enable-kvm -name win2008r2 -S -machine pc-
i440fx-2.5,accel=kvm,usb=off -cpu
host,hv_time,hv_relaxed,hv_spinlocks=0x2000 -drive
file=/usr/share/qemu/OVMF.fd,if=pflash,format=raw,unit=0,readonly=on
-drive
file=/var/lib/libvirt/qemu/nvram/win2008r2_VARS.fd,if=pflash,format=raw,unit=1
-m size=8388608k,slots=10,maxmem=1073741824k -realtime mlock=off -smp
8,maxcpus=96,sockets=24,cores=4,threads=1 -numa
node,nodeid=0,cpus=0-7,mem=8192 -uuid 030638c5-c6aa-
4f06-82f8-dd2d04fd5705 -no-user-config -nodefaults -chardev
socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-
win2008r2/monitor.sock,server,nowait -mon
chardev=charmonitor,id=monitor,mode=control -rtc
base=localtime,clock=vm,driftfix=slew -no-hpet -no-shutdown -boot
strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device
usb-ehci,id=usb1,bus=pci.0,addr=0x4 -device nec-usb-
xhci,id=usb2,bus=pci.0,addr=0x5 -device
lsi,id=scsi0,bus=pci.0,addr=0x6 -device virtio-scsi-
pci,id=scsi1,bus=pci.0,addr=0x7 -device virtio-serial-pci,id=virtio-
serial0,bus=pci.0,addr=0x8 -drive
file=/vms/images/win2008r2,format=qcow2,if=none,id=drive-
ide0-0-0,cache=directsync -device ide-hd,bus=ide.0,unit=0,drive=drive-
ide0-0-0,id=ide0-0-0,bootindex=1 -drive
file=/vms/isos/cn_windows_server_2008_r2_standard_enterprise_datacenter_and_web_with_sp1_x64_dvd_617598.iso,format=raw,if=none,id
=drive-ide0-1-1,readonly=on -device ide-cd,bus=ide.1,unit=1,drive
=drive-ide0-1-1,id=ide0-1-1,bootindex=2 -chardev pty,id=charserial0
-device isa-serial,chardev=charserial0,id=serial0 -chardev
socket,id=charchannel0,path=/var/lib/libvirt/qemu/win2008r2.agent,server,nowait
-device virtserialport,bus=virtio-
serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0
-device usb-tablet,id=input0 -vnc 0.0.0.0:0 -device
VGA,id=video0,vgamem_mb=16,bus=pci.0,addr=0x2 -device virtio-balloon-
pci,id=balloon0,bus=pci.0,addr=0xa -msg timestamp=on
OVMF.fd is download from http://sourceforge.net/projects/edk2/files/OVMF/
OVMF-X64-r15214.zip.
When I boot my domain with windows2008 iso, the kvm was caught in
endless interrupt. I enable trace on my host and I got this.
1. echo 1 > /sys/kernel/debug/tracing/events/kvm/enable
2. cat /sys/kernel/debug/tracing/trace_pipe
qemu-system-x86-1969 [006] .... 2093.019588: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.019590: kvm_entry: vcpu 0
qemu-system-x86-1966 [017] .... 2093.021424: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.021429: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.021430: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1969 [006] .... 2093.021683: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.021686: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.022592: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000ef
qemu-system-x86-1969 [006] d... 2093.022595: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.022746: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.022749: kvm_entry: vcpu 0
qemu-system-x86-1966 [017] .... 2093.023434: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.023444: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.023446: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1969 [006] .... 2093.023610: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.023612: kvm_entry: vcpu 0
qemu-system-x86-1966 [017] .... 2093.025430: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.025435: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.025436: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1969 [006] .... 2093.025599: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.025601: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .N.. 2093.026593: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000ef
qemu-system-x86-1969 [006] d... 2093.026596: kvm_fpu: unload
qemu-system-x86-1969 [006] .... 2093.026598: kvm_ple_window: vcpu 0:
ple_window 4096 (shrink 4096)
qemu-system-x86-1969 [006] .... 2093.026599: kvm_fpu: load
qemu-system-x86-1969 [006] d... 2093.026599: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.026741: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.026744: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.026841: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.026844: kvm_entry: vcpu 0
qemu-system-x86-1966 [017] .... 2093.027448: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.027454: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.027455: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1966 [017] .... 2093.029444: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.029449: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.029450: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1969 [006] .... 2093.029452: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000ef
qemu-system-x86-1969 [006] d... 2093.029454: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.029633: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.029636: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.030592: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000ef
qemu-system-x86-1969 [006] d... 2093.030595: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.030745: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.030748: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.030840: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.030843: kvm_entry: vcpu 0
qemu-system-x86-1966 [017] .... 2093.031454: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.031459: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.031460: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1966 [017] .... 2093.032968: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.032974: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.032975: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1969 [006] .... 2093.033229: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.033231: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.034592: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000ef
qemu-system-x86-1969 [006] d... 2093.034595: kvm_entry: vcpu 0
qemu-system-x86-1969 [006] .... 2093.034781: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.034783: kvm_entry: vcpu 0
qemu-system-x86-1966 [017] .... 2093.034975: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.034980: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.034981: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1969 [006] .... 2093.035113: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae8e info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.035116: kvm_entry: vcpu 0
qemu-system-x86-1966 [017] .... 2093.036983: kvm_set_irq: gsi 8 level 1
source 0
qemu-system-x86-1966 [017] .... 2093.036989: kvm_pic_set_irq: chip 1 pin 0
(edge|masked)
qemu-system-x86-1966 [017] .... 2093.036990: kvm_ioapic_set_irq: pin 8 dst
1 vec=209 (Fixed|logical|edge) (coalesced)
qemu-system-x86-1969 [006] .... 2093.037154: kvm_exit: reason
EXTERNAL_INTERRUPT rip 0xfffff8001080ae78 info 0 800000fd
qemu-system-x86-1969 [006] d... 2093.037157: kvm_entry: vcpu 0
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1593605/+subscriptions
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, (continued)
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Richard Zhang, 2016/06/17
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Richard Zhang, 2016/06/17
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Denis V. Lunev, 2016/06/18
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Richard Zhang, 2016/06/18
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Denis V. Lunev, 2016/06/18
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Richard Zhang, 2016/06/18
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Laszlo Ersek \(Red Hat\), 2016/06/18
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Denis V. Lunev, 2016/06/18
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Denis V. Lunev, 2016/06/18
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi, Denis V. Lunev, 2016/06/18
- [Qemu-devel] [Bug 1593605] Re: windows2008r2 boot failed with uefi,
Laszlo Ersek \(Red Hat\) <=