Pim van Riezen
2008-Oct-07 13:58 UTC
[Xen-users] HVM falls back to qemu emulation while VMX is enabled (Xen 3.1)
Hi, I''ve got a machine with two 2-core Xeon 5140 CPUs that is running hvm guests like they were spawned by bochs running on a sparcstation 1. Taking a look in top on domain0 shows me qemu-dm eating about 70% cpu while the machine boots. Another machine running the same version of CentOS but with a Xeon 5150 has no issues. I''ve briefly tried xen/xend 3.2 on the machine. If I used the /boot/ xen.gz-3.2 as the hypervisor, /proc/cpuinfo would stop listing vmx among the capabilities. Going back to the RedHat version of xen-3.1 and xend-3.0, I get them back: flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm The guest entry in xm list: (domain (domid 2) (uuid 4548659f-d6e6-4e37-95d5-d8d002cfddf9) (vcpus 1) (cpu_weight 1.0) (memory 4096) (shadow_memory 33) (maxmem 4096) (features ) (name win2k8) (on_poweroff destroy) (on_reboot restart) (on_crash restart) (image (hvm (kernel /usr/lib/xen/boot/hvmloader) (device_model /usr/lib64/xen/bin/qemu-dm) (pae 1) (vcpus 1) (boot cda) (serial pty) (vnc 1) (vncdisplay 1) (vncunused 1) (xauthority /root/.Xauthority) (acpi 1) (apic 1) (usbdevice tablet) (vncpasswd ) ) ) (device (vif (backend 0) (script vif-bridge) (bridge xenbr0) (mac 00:16:3e:51:58:14) ) ) (device (vbd (backend 0) (dev hda:disk) (uname phy:/dev/mapper/vpsvg--006-win2k8) (mode w) ) ) (device (vbd (backend 0) (dev hdc:cdrom) (uname file:/root/win2k8.iso) (mode r)) ) (state -b----) (shutdown_reason poweroff) (cpu_time 90.422212135) (online_vcpus 1) (up_time 189.009996891) (start_time 1223387435.83) (store_mfn 983038) ) The xen dmesg: __ __ _____ _ ____ ___ ____ _ _ _____ _ ____ \ \/ /___ _ __ |___ / / | |___ \ / _ \___ \ / | / |___ / ___| | ___| \ // _ \ \047_ \ |_ \ | | __) |_| (_) |__) | | | | | |_ \ / _ \ |___ \ / \ __/ | | | ___) || |_ / __/|__\__, / __/ _| |_| |___) | __/ | ___) | /_/\_\___|_| |_| |____(_)_(_)_____| /_/_____(_)_(_)_|____(_)___|_| ____/ http://www.cl.cam.ac.uk/netos/xen University of Cambridge Computer Laboratory Xen version 3.1.2-92.1.13.el5 (mockbuild@centos.org) (gcc version 4.1.2 20071124 (Red Hat 4.1.2-42)) Wed Sep 24 19:25:14 EDT 2008 Latest ChangeSet: unavailable (XEN) Command line: dom0_mem=1024M (XEN) Video information: (XEN) VGA is text mode 80x25, font 8x16 (XEN) VBE/DDC methods: none; EDID transfer time: 2 seconds (XEN) EDID info not retrieved because no DDC retrieval method detected (XEN) Disc information: (XEN) Found 1 MBR signatures (XEN) Found 1 EDD information structures (XEN) Xen-e820 RAM map: (XEN) 0000000000000000 - 00000000000a0000 (usable) (XEN) 0000000000100000 - 00000000bfb50000 (usable) (XEN) 00000000bfb50000 - 00000000bfb66000 (reserved) (XEN) 00000000bfb66000 - 00000000bfb85c00 (ACPI data) (XEN) 00000000bfb85c00 - 00000000c0000000 (reserved) (XEN) 00000000e0000000 - 00000000f0000000 (reserved) (XEN) 00000000fe000000 - 0000000100000000 (reserved) (XEN) 0000000100000000 - 0000000440000000 (usable) (XEN) System RAM: 16378MB (16772032kB) (XEN) Xen heap: 14MB (14496kB) (XEN) Domain heap initialised: DMA width 32 bits (XEN) Processor #0 6:15 APIC version 20 (XEN) Processor #6 6:15 APIC version 20 (XEN) Processor #1 6:15 APIC version 20 (XEN) Processor #7 6:15 APIC version 20 (XEN) IOAPIC[0]: apic_id 8, version 32, address 0xfec00000, GSI 0-23 (XEN) IOAPIC[1]: apic_id 9, version 32, address 0xfec81000, GSI 64-87 (XEN) Enabling APIC mode: Flat. Using 2 I/O APICs (XEN) Using scheduler: SMP Credit Scheduler (credit) (XEN) Detected 2327.545 MHz processor. (XEN) HVM: VMX enabled (XEN) VMX: MSR intercept bitmap enabled (XEN) CPU0: Intel(R) Xeon(R) CPU 5140 @ 2.33GHz stepping 06 (XEN) Booting processor 1/6 eip 90000 (XEN) CPU1: Intel(R) Xeon(R) CPU 5140 @ 2.33GHz stepping 06 (XEN) Booting processor 2/1 eip 90000 (XEN) CPU2: Intel(R) Xeon(R) CPU 5140 @ 2.33GHz stepping 06 (XEN) Booting processor 3/7 eip 90000 (XEN) CPU3: Intel(R) Xeon(R) CPU 5140 @ 2.33GHz stepping 06 (XEN) Total of 4 processors activated. (XEN) ENABLING IO-APIC IRQs (XEN) -> Using new ACK method (XEN) Platform timer overflows in 14998 jiffies. (XEN) Platform timer is 14.318MHz HPET (XEN) Brought up 4 CPUs (XEN) *** LOADING DOMAIN 0 *** (XEN) elf_parse_binary: phdr: paddr=0xffffffff80200000 memsz=0x2d6d20 (XEN) elf_parse_binary: phdr: paddr=0xffffffff804d6d80 memsz=0x1161d0 (XEN) elf_parse_binary: phdr: paddr=0xffffffff805ed000 memsz=0xc08 (XEN) elf_parse_binary: phdr: paddr=0xffffffff805ee000 memsz=0x1134e4 (XEN) elf_parse_binary: memory: 0xffffffff80200000 -> 0xffffffff807014e4 (XEN) elf_xen_parse_note: GUEST_OS = "linux" (XEN) elf_xen_parse_note: GUEST_VERSION = "2.6" (XEN) elf_xen_parse_note: XEN_VERSION = "xen-3.0" (XEN) elf_xen_parse_note: VIRT_BASE = 0xffffffff80000000 (XEN) elf_xen_parse_note: PADDR_OFFSET = 0xffffffff80000000 (XEN) elf_xen_parse_note: ENTRY = 0xffffffff80200000 (XEN) elf_xen_parse_note: HYPERCALL_PAGE = 0xffffffff80206000 (XEN) elf_xen_parse_note: FEATURES = "writable_page_tables| writable_descriptor_tables|auto_translated_physmap|pae_pgdir_above_4gb| supervisor_mode_kernel" (XEN) elf_xen_parse_note: LOADER = "generic" (XEN) elf_xen_addr_calc_check: addresses: (XEN) virt_base = 0xffffffff80000000 (XEN) elf_paddr_offset = 0xffffffff80000000 (XEN) virt_offset = 0x0 (XEN) virt_kstart = 0xffffffff80200000 (XEN) virt_kend = 0xffffffff807014e4 (XEN) virt_entry = 0xffffffff80200000 (XEN) Xen kernel: 64-bit, lsb, compat32 (XEN) Dom0 kernel: 64-bit, lsb, paddr 0xffffffff80200000 -> 0xffffffff807014e4 (XEN) PHYSICAL MEMORY ARRANGEMENT: (XEN) Dom0 alloc.: 0000000430000000->0000000432000000 (253952 pages to be allocated) (XEN) VIRTUAL MEMORY ARRANGEMENT: (XEN) Loaded kernel: ffffffff80200000->ffffffff807014e4 (XEN) Init. ramdisk: ffffffff80702000->ffffffff80e6ce00 (XEN) Phys-Mach map: ffffffff80e6d000->ffffffff8106d000 (XEN) Start info: ffffffff8106d000->ffffffff8106d49c (XEN) Page tables: ffffffff8106e000->ffffffff8107b000 (XEN) Boot stack: ffffffff8107b000->ffffffff8107c000 (XEN) TOTAL: ffffffff80000000->ffffffff81400000 (XEN) ENTRY ADDRESS: ffffffff80200000 (XEN) Dom0 has maximum 4 VCPUs (XEN) elf_load_binary: phdr 0 at 0xffffffff80200000 -> 0xffffffff804d6d20 (XEN) elf_load_binary: phdr 1 at 0xffffffff804d6d80 -> 0xffffffff805ecf50 (XEN) elf_load_binary: phdr 2 at 0xffffffff805ed000 -> 0xffffffff805edc08 (XEN) elf_load_binary: phdr 3 at 0xffffffff805ee000 -> 0xffffffff80628388 (XEN) Initrd len 0x76ae00, start at 0xffffffff80702000 (XEN) Scrubbing Free RAM : .......................................................................................................................................................done . (XEN) Xen trace buffers: disabled (XEN) Std. Loglevel: Errors and warnings (XEN) Guest Loglevel: Nothing (Rate-limited: Errors and warnings) (XEN) Xen is relinquishing VGA console. (XEN) *** Serial input -> DOM0 (type \047CTRL-a\047 three times to switch input to Xen). (XEN) Freed 100kB init memory. Any suggestions? Cheers, Pi _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Andrew Lyon
2008-Oct-07 14:20 UTC
Re: [Xen-users] HVM falls back to qemu emulation while VMX is enabled (Xen 3.1)
On Tue, Oct 7, 2008 at 2:58 PM, Pim van Riezen <pi+lists@panelsix.com> wrote:> Hi, > I''ve got a machine with two 2-core Xeon 5140 CPUs that is running hvm guests > like they were spawned by bochs running on a sparcstation 1. Taking a look > in top on domain0 shows me qemu-dm eating about 70% cpu while the machine > boots. Another machine running the same version of CentOS but with a Xeon > 5150 has no issues. > > I''ve briefly tried xen/xend 3.2 on the machine. If I used the > /boot/xen.gz-3.2 as the hypervisor, /proc/cpuinfo would stop listing vmx > among the capabilities. Going back to the RedHat version of xen-3.1 and > xend-3.0, I get them back:Not that it helps with your problem, but not seeing vmx in /proc/cpuinfo is normal for newer versions of Xen, after all Linux cannot use the vmx feature as it is already being used by the Xen hypervisor, so it is logical that the feature is no longer listed.> > flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts > acpi mmx fxsr sse sse2 ss ht tm syscall lm constant_tsc pni monitor ds_cpl > vmx est tm2 cx16 xtpr lahf_lm > > The guest entry in xm list: > > (domain > (domid 2) > (uuid 4548659f-d6e6-4e37-95d5-d8d002cfddf9) > (vcpus 1) > (cpu_weight 1.0) > (memory 4096) > (shadow_memory 33) > (maxmem 4096) > (features ) > (name win2k8) > (on_poweroff destroy) > (on_reboot restart) > (on_crash restart) > (image > (hvm > (kernel /usr/lib/xen/boot/hvmloader) > (device_model /usr/lib64/xen/bin/qemu-dm) > (pae 1) > (vcpus 1) > (boot cda) > (serial pty) > (vnc 1) > (vncdisplay 1) > (vncunused 1) > (xauthority /root/.Xauthority) > (acpi 1) > (apic 1) > (usbdevice tablet) > (vncpasswd ) > ) > ) > (device > (vif > (backend 0) > (script vif-bridge) > (bridge xenbr0) > (mac 00:16:3e:51:58:14) > ) > ) > (device > (vbd > (backend 0) > (dev hda:disk) > (uname phy:/dev/mapper/vpsvg--006-win2k8) > (mode w) > ) > ) > (device > (vbd (backend 0) (dev hdc:cdrom) (uname file:/root/win2k8.iso) (mode > r)) > ) > (state -b----) > (shutdown_reason poweroff) > (cpu_time 90.422212135) > (online_vcpus 1) > (up_time 189.009996891) > (start_time 1223387435.83) > (store_mfn 983038) > ) > > The xen dmesg: > > __ __ _____ _ ____ ___ ____ _ _ _____ _ ____ > \ \/ /___ _ __ |___ / / | |___ \ / _ \___ \ / | / |___ / ___| | ___| > \ // _ \ \047_ \ |_ \ | | __) |_| (_) |__) | | | | | |_ \ / _ \ |___ > \ > / \ __/ | | | ___) || |_ / __/|__\__, / __/ _| |_| |___) | __/ |___) | > /_/\_\___|_| |_| |____(_)_(_)_____| /_/_____(_)_(_)_|____(_)___|_|____/ > > http://www.cl.cam.ac.uk/netos/xen > University of Cambridge Computer Laboratory > > Xen version 3.1.2-92.1.13.el5 (mockbuild@centos.org) (gcc version 4.1.2 > 20071124 (Red Hat 4.1.2-42)) Wed Sep 24 19:25:14 EDT 2008 > Latest ChangeSet: unavailable > > (XEN) Command line: dom0_mem=1024M > (XEN) Video information: > (XEN) VGA is text mode 80x25, font 8x16 > (XEN) VBE/DDC methods: none; EDID transfer time: 2 seconds > (XEN) EDID info not retrieved because no DDC retrieval method detected > (XEN) Disc information: > (XEN) Found 1 MBR signatures > (XEN) Found 1 EDD information structures > (XEN) Xen-e820 RAM map: > (XEN) 0000000000000000 - 00000000000a0000 (usable) > (XEN) 0000000000100000 - 00000000bfb50000 (usable) > (XEN) 00000000bfb50000 - 00000000bfb66000 (reserved) > (XEN) 00000000bfb66000 - 00000000bfb85c00 (ACPI data) > (XEN) 00000000bfb85c00 - 00000000c0000000 (reserved) > (XEN) 00000000e0000000 - 00000000f0000000 (reserved) > (XEN) 00000000fe000000 - 0000000100000000 (reserved) > (XEN) 0000000100000000 - 0000000440000000 (usable) > (XEN) System RAM: 16378MB (16772032kB) > (XEN) Xen heap: 14MB (14496kB) > (XEN) Domain heap initialised: DMA width 32 bits > (XEN) Processor #0 6:15 APIC version 20 > (XEN) Processor #6 6:15 APIC version 20 > (XEN) Processor #1 6:15 APIC version 20 > (XEN) Processor #7 6:15 APIC version 20 > (XEN) IOAPIC[0]: apic_id 8, version 32, address 0xfec00000, GSI 0-23 > (XEN) IOAPIC[1]: apic_id 9, version 32, address 0xfec81000, GSI 64-87 > (XEN) Enabling APIC mode: Flat. Using 2 I/O APICs > (XEN) Using scheduler: SMP Credit Scheduler (credit) > (XEN) Detected 2327.545 MHz processor. > (XEN) HVM: VMX enabledThat is where you should expect VMX to be detected.> (XEN) VMX: MSR intercept bitmap enabled > (XEN) CPU0: Intel(R) Xeon(R) CPU 5140 @ 2.33GHz stepping 06 > (XEN) Booting processor 1/6 eip 90000 > (XEN) CPU1: Intel(R) Xeon(R) CPU 5140 @ 2.33GHz stepping 06 > (XEN) Booting processor 2/1 eip 90000 > (XEN) CPU2: Intel(R) Xeon(R) CPU 5140 @ 2.33GHz stepping 06 > (XEN) Booting processor 3/7 eip 90000 > (XEN) CPU3: Intel(R) Xeon(R) CPU 5140 @ 2.33GHz stepping 06 > (XEN) Total of 4 processors activated. > (XEN) ENABLING IO-APIC IRQs > (XEN) -> Using new ACK method > (XEN) Platform timer overflows in 14998 jiffies. > (XEN) Platform timer is 14.318MHz HPET > (XEN) Brought up 4 CPUs > (XEN) *** LOADING DOMAIN 0 *** > (XEN) elf_parse_binary: phdr: paddr=0xffffffff80200000 memsz=0x2d6d20 > (XEN) elf_parse_binary: phdr: paddr=0xffffffff804d6d80 memsz=0x1161d0 > (XEN) elf_parse_binary: phdr: paddr=0xffffffff805ed000 memsz=0xc08 > (XEN) elf_parse_binary: phdr: paddr=0xffffffff805ee000 memsz=0x1134e4 > (XEN) elf_parse_binary: memory: 0xffffffff80200000 -> 0xffffffff807014e4 > (XEN) elf_xen_parse_note: GUEST_OS = "linux" > (XEN) elf_xen_parse_note: GUEST_VERSION = "2.6" > (XEN) elf_xen_parse_note: XEN_VERSION = "xen-3.0" > (XEN) elf_xen_parse_note: VIRT_BASE = 0xffffffff80000000 > (XEN) elf_xen_parse_note: PADDR_OFFSET = 0xffffffff80000000 > (XEN) elf_xen_parse_note: ENTRY = 0xffffffff80200000 > (XEN) elf_xen_parse_note: HYPERCALL_PAGE = 0xffffffff80206000 > (XEN) elf_xen_parse_note: FEATURES > "writable_page_tables|writable_descriptor_tables|auto_translated_physmap|pae_pgdir_above_4gb|supervisor_mode_kernel" > (XEN) elf_xen_parse_note: LOADER = "generic" > (XEN) elf_xen_addr_calc_check: addresses: > (XEN) virt_base = 0xffffffff80000000 > (XEN) elf_paddr_offset = 0xffffffff80000000 > (XEN) virt_offset = 0x0 > (XEN) virt_kstart = 0xffffffff80200000 > (XEN) virt_kend = 0xffffffff807014e4 > (XEN) virt_entry = 0xffffffff80200000 > (XEN) Xen kernel: 64-bit, lsb, compat32 > (XEN) Dom0 kernel: 64-bit, lsb, paddr 0xffffffff80200000 -> > 0xffffffff807014e4 > (XEN) PHYSICAL MEMORY ARRANGEMENT: > (XEN) Dom0 alloc.: 0000000430000000->0000000432000000 (253952 pages to be > allocated) > (XEN) VIRTUAL MEMORY ARRANGEMENT: > (XEN) Loaded kernel: ffffffff80200000->ffffffff807014e4 > (XEN) Init. ramdisk: ffffffff80702000->ffffffff80e6ce00 > (XEN) Phys-Mach map: ffffffff80e6d000->ffffffff8106d000 > (XEN) Start info: ffffffff8106d000->ffffffff8106d49c > (XEN) Page tables: ffffffff8106e000->ffffffff8107b000 > (XEN) Boot stack: ffffffff8107b000->ffffffff8107c000 > (XEN) TOTAL: ffffffff80000000->ffffffff81400000 > (XEN) ENTRY ADDRESS: ffffffff80200000 > (XEN) Dom0 has maximum 4 VCPUs > (XEN) elf_load_binary: phdr 0 at 0xffffffff80200000 -> 0xffffffff804d6d20 > (XEN) elf_load_binary: phdr 1 at 0xffffffff804d6d80 -> 0xffffffff805ecf50 > (XEN) elf_load_binary: phdr 2 at 0xffffffff805ed000 -> 0xffffffff805edc08 > (XEN) elf_load_binary: phdr 3 at 0xffffffff805ee000 -> 0xffffffff80628388 > (XEN) Initrd len 0x76ae00, start at 0xffffffff80702000 > (XEN) Scrubbing Free RAM: > .......................................................................................................................................................done. > (XEN) Xen trace buffers: disabled > (XEN) Std. Loglevel: Errors and warnings > (XEN) Guest Loglevel: Nothing (Rate-limited: Errors and warnings) > (XEN) Xen is relinquishing VGA console. > (XEN) *** Serial input -> DOM0 (type \047CTRL-a\047 three times to switch > input to Xen). > (XEN) Freed 100kB init memory. > > Any suggestions? > > Cheers, > Pi > > _______________________________________________ > Xen-users mailing list > Xen-users@lists.xensource.com > http://lists.xensource.com/xen-users >_______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Pim van Riezen
2008-Oct-07 14:31 UTC
Re: [Xen-users] HVM falls back to qemu emulation while VMX is enabled (Xen 3.1)
On Oct 7, 2008, at 16:20 , Andrew Lyon wrote:>> I''ve briefly tried xen/xend 3.2 on the machine. If I used the >> /boot/xen.gz-3.2 as the hypervisor, /proc/cpuinfo would stop >> listing vmx >> among the capabilities. Going back to the RedHat version of xen-3.1 >> and >> xend-3.0, I get them back: > > Not that it helps with your problem, but not seeing vmx in > /proc/cpuinfo is normal for newer versions of Xen, after all Linux > cannot use the vmx feature as it is already being used by the Xen > hypervisor, so it is logical that the feature is no longer listed.At least it''s good to know there is nothing inherently wrong with that xen-3.2 hypervisor then, although the end result on that hypervisor was the same (cpu of the guest got fully emulated, slower than booting GEOS on my C64). Pi _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Andrew Lyon
2008-Oct-07 15:15 UTC
Re: [Xen-users] HVM falls back to qemu emulation while VMX is enabled (Xen 3.1)
On Tue, Oct 7, 2008 at 3:31 PM, Pim van Riezen <pi+lists@panelsix.com> wrote:> On Oct 7, 2008, at 16:20 , Andrew Lyon wrote: > >>> I''ve briefly tried xen/xend 3.2 on the machine. If I used the >>> /boot/xen.gz-3.2 as the hypervisor, /proc/cpuinfo would stop listing vmx >>> among the capabilities. Going back to the RedHat version of xen-3.1 and >>> xend-3.0, I get them back: >> >> Not that it helps with your problem, but not seeing vmx in >> /proc/cpuinfo is normal for newer versions of Xen, after all Linux >> cannot use the vmx feature as it is already being used by the Xen >> hypervisor, so it is logical that the feature is no longer listed. > > At least it''s good to know there is nothing inherently wrong with that > xen-3.2 hypervisor then, although the end result on that hypervisor was the > same (cpu of the guest got fully emulated, slower than booting GEOS on my > C64). > > PiI don''t think that is possible, afaik Xen can only run Windows through HVM, there was a modified build of windows that was paravirtualized but it was never released to the public, only some Xen developers at cambridge university had access, so you are using vmx/hvm and your problem is not that the cpu is being fully emulated, it is something else! Andy _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Pim van Riezen
2008-Oct-07 15:45 UTC
Re: [Xen-users] HVM falls back to qemu emulation while VMX is enabled (Xen 3.1)
On Oct 7, 2008, at 17:15 , Andrew Lyon wrote:> On Tue, Oct 7, 2008 at 3:31 PM, Pim van Riezen <pi > +lists@panelsix.com> wrote: >> On Oct 7, 2008, at 16:20 , Andrew Lyon wrote: >> >>>> I''ve briefly tried xen/xend 3.2 on the machine. If I used the >>>> /boot/xen.gz-3.2 as the hypervisor, /proc/cpuinfo would stop >>>> listing vmx >>>> among the capabilities. Going back to the RedHat version of >>>> xen-3.1 and >>>> xend-3.0, I get them back: >>> >>> Not that it helps with your problem, but not seeing vmx in >>> /proc/cpuinfo is normal for newer versions of Xen, after all Linux >>> cannot use the vmx feature as it is already being used by the Xen >>> hypervisor, so it is logical that the feature is no longer listed. >> >> At least it''s good to know there is nothing inherently wrong with >> that >> xen-3.2 hypervisor then, although the end result on that hypervisor >> was the >> same (cpu of the guest got fully emulated, slower than booting GEOS >> on my >> C64). >> >> Pi > > I don''t think that is possible, afaik Xen can only run Windows through > HVM, there was a modified build of windows that was paravirtualized > but it was never released to the public, only some Xen developers at > cambridge university had access, so you are using vmx/hvm and your > problem is not that the cpu is being fully emulated, it is something > else!Ok, in that case let me restate my question without preconceptions about its cause: I start the guest, it starts eating 100% cpu in xm top. It takes forever booting and logging me into a desktop. It''s the effect of running on a severely underpowered CPU of a 386 class or lower. In xentop, Domain-0 also seems to be taking up a lot of cpu, around 70%. Running top in Dom0 shows qemu-md taking up that cpu-time. If qemu-md were running a bochs-style emulation, that is what I''d expect to see. If I start the same guest on the Xeon 5150 machine, I see 0% CPU usage in Domain-0 and the guest boots like lightning. Cheers, Pi _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Pim van Riezen
2008-Oct-07 15:56 UTC
Re: [Xen-users] HVM falls back to qemu emulation while VMX is enabled (Xen 3.1)
On Oct 7, 2008, at 17:45 , Pim van Riezen wrote:> On Oct 7, 2008, at 17:15 , Andrew Lyon wrote: > >> I don''t think that is possible, afaik Xen can only run Windows >> through >> HVM, there was a modified build of windows that was paravirtualized >> but it was never released to the public, only some Xen developers at >> cambridge university had access, so you are using vmx/hvm and your >> problem is not that the cpu is being fully emulated, it is something >> else! > > Ok, in that case let me restate my question without preconceptions > about its cause: > > I start the guest, it starts eating 100% cpu in xm top. It takes > forever booting and logging me into a desktop. It''s the effect of > running on a severely underpowered CPU of a 386 class or lower. In > xentop, Domain-0 also seems to be taking up a lot of cpu, around > 70%. Running top in Dom0 shows qemu-md taking up that cpu-time.In strace, qemu-dm seems to be stuck in this loop: [pid 5591] read(14, "\33\0\0\0", 4) = 4 [pid 5591] write(14, "\33\0\0\0", 4) = 4 [pid 5591] clock_gettime(CLOCK_MONOTONIC, {8055, 225845018}) = 0 [pid 5591] ioctl(14, EVIOCGKEYCODE, 0x7fff49c8c900) = 0 [pid 5591] clock_gettime(CLOCK_MONOTONIC, {8055, 226550018}) = 0 [pid 5591] clock_gettime(CLOCK_MONOTONIC, {8055, 226601018}) = 0 [pid 5591] select(15, [8 9 10 12 14], [], [], {0, 10000}) = 1 (in [14], left {0, 10000}) qemu-dm 5591 root 14u CHR 10,63 7412 /dev/xen/evtchn A quick peek in gdb showed me these thread states: Thread 3 (Thread 1100265792 (LWP 5634)): #0 0x000000306300cc9b in read () from /lib64/libpthread.so.0 #1 0x00002ae56127997a in ?? () from /usr/lib64/libxenstore.so.3.0 #2 0x00002ae5612799f2 in ?? () from /usr/lib64/libxenstore.so.3.0 #3 0x00002ae561279b4c in ?? () from /usr/lib64/libxenstore.so.3.0 #4 0x0000003063006307 in start_thread () from /lib64/libpthread.so.0 #5 0x00000030628d1ded in clone () from /lib64/libc.so.6 Thread 2 (Thread 1114483008 (LWP 5709)): #0 0x00000030628cb332 in select () from /lib64/libc.so.6 #1 0x000000000042bf31 in ?? () #2 0x0000003063006307 in start_thread () from /lib64/libpthread.so.0 #3 0x00000030628d1ded in clone () from /lib64/libc.so.6 Thread 1 (Thread 47164668008768 (LWP 5591)): #0 0x00000030628ca9b7 in ioctl () from /lib64/libc.so.6 #1 0x00002ae560e2f0b6 in xc_evtchn_notify () from /usr/lib64/ libxenctrl.so.3.0 #2 0x000000000040950a in ?? () #3 0x000000000047152d in ?? () #4 0x000000000040afbb in ?? () #5 0x000000306281d8b4 in __libc_start_main () from /lib64/libc.so.6 #6 0x0000000000404939 in ?? () #7 0x00007fff49c90758 in ?? () #8 0x0000000000000000 in ?? () #0 0x00000030628ca9b7 in ioctl () from /lib64/libc.so.6 Hope that''s useful :) Cheers, Pi _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users