qemu-devel
[Top][All Lists]
Advanced

[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



reply via email to

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