Hi everyone,
I am very excited to see that dom0 pvops is finally coming close to
working, so I wanted to give it a try.
>From the description it was not clear to me which kernel to chose as
base for the patches.hg, so I took the latest (that was ~ 2 weeks ago)
kernel on git.kernel.org I could find (post-2.6.28 git tip at that
point).
I managed to more or less apply all of the patches in the patches.hg
series file (some where already applied upstream). It also needed some
minor fixes (for instance arch/x86/pci/pci.h got moved to
arch/x86/include/asm/pci_x86.h, so rather trivial things).
However, I got none of the kernels to boot. Every time it dies in what
looks like the first context switch (I guess), every time somewhere in
the scheduler shortly after doing the low-level switching stuff. This
happens for both SMP and UP kernels (however, in different places). For
the SMP kernel I saw a crash in "task_tick_fair", on the UP kernel in
the arch code __switch_to somewhere around the unlazy_fpu() call (a bit
confusing due to the heavy inlining). In yet another version I have
"preempt_schedule" directly on the stack, it's not clear where it
crashes, since I don't even get a kernel trace. Sometimes the crash
would be due to a memory access into Nirvana land (while trying to get a
per_cpu variable) and another time jumping to the null pointer.
I have to say that except for looking a bit at it I have no clue what
might be going wrong. It seems like the context switch is messed up and
therefore things go wonky quickly after. The same kernel works fine
with KVM paravirt or on bare metal.
It always crashes directly after "ACPI: Core revision
20080926" (sometimes with a Bug beforehand, sometimes with a few Kernel
oopses before XEN declares the dom0 as dead). It doesn't seem to have
anything to do with ACPI however.
I have my kernel in a local git area (all patches.hg patches as
individual git commits, as well as my personal fixes), in case someone
is interested.
So my question: Am I missing something here? Or is this known to now
work or has not yet been looked at? Any idea what is happening?
Thank you,
Christophe
kvm -hda /data/store/tmp -no-kvm -nographic
(yes, I am playing with Qemu, but it gives the same effect when booting
it natively)
__ __ _____ _ _ _ _ _
\ \/ /___ _ __ |___ /| || | _ _ _ __ ___| |_ __ _| |__ | | ___
\ // _ \ '_ \ |_ \| || |_ __| | | | '_ \/ __| __/ _` | '_ \| |/ _ \
/ \ __/ | | | ___) |__ _|__| |_| | | | \__ \ || (_| | |_) | | __/
/_/\_\___|_| |_| |____(_) |_| \__,_|_| |_|___/\__\__,_|_.__/|_|\___|
(XEN) Xen version 3.4-unstable (chtephan@xxxxxxxxxxxxxxx) (gcc-Treiberversion
4.3.2 (Gentoo 4.3.2 p0.2, pie-8.7.9) führt GCC-Version 4.4.0-alpha20090109
aus) Sat Jan 10 18:05:59 CET 2009
(XEN) Latest ChangeSet: Fri Jan 09 16:56:54 2009 +0000 19024:b999142bca8c
(XEN) Command line: console=com1,vga com1=9600,8n1
(XEN) Video information:
(XEN) VGA is text mode 80x25, font 8x16
(XEN) Disc information:
(XEN) Found 1 MBR signatures
(XEN) Found 1 EDD information structures
(XEN) Xen-e820 RAM map:
(XEN) 0000000000000000 - 000000000009fc00 (usable)
(XEN) 000000000009fc00 - 00000000000a0000 (reserved)
(XEN) 00000000000e8000 - 0000000000100000 (reserved)
(XEN) 0000000000100000 - 0000000007ff0000 (usable)
(XEN) 0000000007ff0000 - 0000000008000000 (ACPI data)
(XEN) 00000000fffbd000 - 0000000100000000 (reserved)
(XEN) System RAM: 127MB (130620kB)
(XEN) ACPI: RSDP 000FBC80, 0014 (r0 QEMU )
(XEN) ACPI: RSDT 07FF0000, 002C (r1 QEMU QEMURSDT 1 QEMU 1)
(XEN) ACPI: FACP 07FF002C, 0074 (r1 QEMU QEMUFACP 1 QEMU 1)
(XEN) ACPI: DSDT 07FF0100, 24A4 (r1 BXPC BXDSDT 1 INTL 20061109)
(XEN) ACPI: FACS 07FF00C0, 0040
(XEN) ACPI: APIC 07FF25A8, 00E0 (r1 QEMU QEMUAPIC 1 QEMU 1)
(XEN) Xen heap: 14MB (14676kB)
(XEN) Domain heap initialised
(XEN) Processor #0 6:2 APIC version 17
(XEN) IOAPIC[0]: apic_id 1, version 17, address 0xfec00000, GSI 0-23
(XEN) Enabling APIC mode: Flat. Using 1 I/O APICs
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) Detected 1996.258 MHz processor.
(XEN) AMD SVM: ASIDs disabled.
(XEN) HVM: SVM enabled
(XEN) CPU0: AMD QEMU Virtual CPU version 0.9.1 stepping 03
(XEN) Total of 1 processors activated.
(XEN) ENABLING IO-APIC IRQs
(XEN) -> Using new ACK method
(XEN) Platform timer is 3.579MHz ACPI PM Timer
(XEN) Brought up 1 CPUs
(XEN) I/O virtualisation disabled
(XEN) *** LOADING DOMAIN 0 ***
(XEN) Xen kernel: 64-bit, lsb, compat32
(XEN) Dom0 kernel: 64-bit, PAE, lsb, paddr 0x200000 -> 0xadb3d4
(XEN) PHYSICAL MEMORY ARRANGEMENT:
(XEN) Dom0 alloc.: 0000000004000000->0000000005000000 (21254 pages to be
allocated)
(XEN) VIRTUAL MEMORY ARRANGEMENT:
(XEN) Loaded kernel: ffffffff80200000->ffffffff80adb3d4
(XEN) Init. ramdisk: ffffffff80adc000->ffffffff80adc000
(XEN) Phys-Mach map: ffffffff80adc000->ffffffff80b0d830
(XEN) Start info: ffffffff80b0e000->ffffffff80b0e4b4
(XEN) Page tables: ffffffff80b0f000->ffffffff80b18000
(XEN) Boot stack: ffffffff80b18000->ffffffff80b19000
(XEN) TOTAL: ffffffff80000000->ffffffff80c00000
(XEN) ENTRY ADDRESS: ffffffff8086f200
(XEN) Dom0 has maximum 1 VCPUs
(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 'CTRL-a' three times to switch input to
Xen)
(XEN) Freed 116kB init memory.
mapping kernel into physical memory
Xen: setup ISA identity maps
about to get started...
PAT disabled on Xen
Linux version 2.6.29-rc0-xen-cs1-dirty (chtephan@leto) (gcc driver version
4.3.2 (Gentoo 4.3.2 p0.2, pie-8.7.9) executing gcc version 4.4.0-alpha20090109)
#1 PREEMPT Sat Jan 10 17:44:29 CET 2009
Command line: console=tty0 xencons=ttyS0,115200 console=hvc0 earlyprintk=xen
root=/dev/vg/root ro nopat noacpi
KERNEL supported cpus:
Intel GenuineIntel
AMD AuthenticAMD
Centaur CentaurHauls
BIOS-provided physical RAM map:
Xen: 0000000000000000 - 000000000009fc00 (usable)
Xen: 000000000009fc00 - 0000000000100000 (reserved)
Xen: 0000000000100000 - 0000000000adc000 (usable)
Xen: 0000000000adc000 - 0000000000b0f000 (reserved)
Xen: 0000000000b0f000 - 0000000006306000 (usable)
Xen: 0000000007ff0000 - 0000000008000000 (ACPI data)
Xen: 00000000fffbd000 - 0000000100000000 (reserved)
console [xenboot0] enabled
PAT support disabled.
DMI 2.4 present.
last_pfn = 0x6306 max_arch_pfn = 0x100000000
init_memory_mapping: 0000000000000000-0000000006306000
last_map_addr: 6306000 end: 6306000
ACPI: RSDP 000FBC80, 0014 (r0 QEMU )
ACPI: RSDT 07FF0000, 002C (r1 QEMU QEMURSDT 1 QEMU 1)
ACPI: FACP 07FF002C, 0074 (r1 QEMU QEMUFACP 1 QEMU 1)
ACPI: DSDT 07FF0100, 24A4 (r1 BXPC BXDSDT 1 INTL 20061109)
ACPI: FACS 07FF00C0, 0040
ACPI: APIC 07FF25A8, 00E0 (r1 QEMU QEMUAPIC 1 QEMU 1)
(5 early reservations) ==> bootmem [0000000000 - 0006306000]
#0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000]
#1 [0000b0f000 - 0000b18000] XEN PAGETABLES ==> [0000b0f000 - 0000b18000]
#2 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000]
#3 [0000200000 - 0000adb3d4] TEXT DATA BSS ==> [0000200000 - 0000adb3d4]
#4 [0000008000 - 0000030000] PGTABLE ==> [0000008000 - 0000030000]
found SMP MP-table at [ffff8800000fbb60] 000fbb60
Zone PFN ranges:
DMA 0x00000000 -> 0x00001000
DMA32 0x00001000 -> 0x00100000
Normal 0x00100000 -> 0x00100000
Movable zone start PFN for each node
early_node_map[3] active PFN ranges
0: 0x00000000 -> 0x0000009f
0: 0x00000100 -> 0x00000adc
0: 0x00000b0f -> 0x00006306
ACPI: PM-Timer IO Port: 0xb008
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] disabled)
ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] disabled)
ACPI: LAPIC (acpi_id[0x03] lapic_id[0x03] disabled)
ACPI: LAPIC (acpi_id[0x04] lapic_id[0x04] disabled)
ACPI: LAPIC (acpi_id[0x05] lapic_id[0x05] disabled)
ACPI: LAPIC (acpi_id[0x06] lapic_id[0x06] disabled)
ACPI: LAPIC (acpi_id[0x07] lapic_id[0x07] disabled)
ACPI: LAPIC (acpi_id[0x08] lapic_id[0x08] disabled)
ACPI: LAPIC (acpi_id[0x09] lapic_id[0x09] disabled)
ACPI: LAPIC (acpi_id[0x0a] lapic_id[0x0a] disabled)
ACPI: LAPIC (acpi_id[0x0b] lapic_id[0x0b] disabled)
ACPI: LAPIC (acpi_id[0x0c] lapic_id[0x0c] disabled)
ACPI: LAPIC (acpi_id[0x0d] lapic_id[0x0d] disabled)
ACPI: LAPIC (acpi_id[0x0e] lapic_id[0x0e] disabled)
ACPI: LAPIC (acpi_id[0x0f] lapic_id[0x0f] disabled)
ACPI: IOAPIC (id[0x01] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 1, version 0, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level)
Using ACPI (MADT) for SMP configuration information
(XEN) ioapic_guest_write: apic=0, pin=0, old_irq=0, new_irq=-1
(XEN) ioapic_guest_write: old_entry=000009f0, new_entry=00010900
(XEN) ioapic_guest_write: Attempt to remove IO-APIC pin of in-use IRQ!
(XEN) ioapic_guest_write: apic=0, pin=4, old_irq=4, new_irq=-1
(XEN) ioapic_guest_write: old_entry=000009f1, new_entry=00010900
(XEN) ioapic_guest_write: Attempt to remove IO-APIC pin of in-use IRQ!
PM: Registered nosave memory: 000000000009f000 - 00000000000a0000
PM: Registered nosave memory: 00000000000a0000 - 0000000000100000
PM: Registered nosave memory: 0000000000adc000 - 0000000000b0f000
Allocating PCI resources starting at 10000000 (gap: 8000000:f7fbd000)
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 22534
Kernel command line: console=tty0 xencons=ttyS0,115200 console=hvc0
earlyprintk=xen root=/dev/vg/root ro nopat noacpi
Initializing CPU#0
xen: allocated irq 9 for acpi 9
PID hash table entries: 512 (order: 9, 4096 bytes)
Detected 1996.258 MHz processor.
Console: colour VGA+ 80x25
console [tty0] enabled
PAT disabled on Xen
Linux version 2.6.29-rc0-xen-cs1-dirty (chtephan@leto) (gcc driver version
4.3.2 (Gentoo 4.3.2 p0.2, pie-8.7.9) executing gcc version 4.4.0-alpha20090109)
#1 PREEMPT Sat Jan 10 17:44:29 CET 2009
Command line: console=tty0 xencons=ttyS0,115200 console=hvc0 earlyprintk=xen
root=/dev/vg/root ro nopat noacpi
KERNEL supported cpus:
Intel GenuineIntel
AMD AuthenticAMD
Centaur CentaurHauls
BIOS-provided physical RAM map:
Xen: 0000000000000000 - 000000000009fc00 (usable)
Xen: 000000000009fc00 - 0000000000100000 (reserved)
Xen: 0000000000100000 - 0000000000adc000 (usable)
Xen: 0000000000adc000 - 0000000000b0f000 (reserved)
Xen: 0000000000b0f000 - 0000000006306000 (usable)
Xen: 0000000007ff0000 - 0000000008000000 (ACPI data)
Xen: 00000000fffbd000 - 0000000100000000 (reserved)
console [xenboot0] enabled
PAT support disabled.
DMI 2.4 present.
last_pfn = 0x6306 max_arch_pfn = 0x100000000
init_memory_mapping: 0000000000000000-0000000006306000
last_map_addr: 6306000 end: 6306000
ACPI: RSDP 000FBC80, 0014 (r0 QEMU )
ACPI: RSDT 07FF0000, 002C (r1 QEMU QEMURSDT 1 QEMU 1)
ACPI: FACP 07FF002C, 0074 (r1 QEMU QEMUFACP 1 QEMU 1)
ACPI: DSDT 07FF0100, 24A4 (r1 BXPC BXDSDT 1 INTL 20061109)
ACPI: FACS 07FF00C0, 0040
ACPI: APIC 07FF25A8, 00E0 (r1 QEMU QEMUAPIC 1 QEMU 1)
(5 early reservations) ==> bootmem [0000000000 - 0006306000]
#0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000]
#1 [0000b0f000 - 0000b18000] XEN PAGETABLES ==> [0000b0f000 - 0000b18000]
#2 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000]
#3 [0000200000 - 0000adb3d4] TEXT DATA BSS ==> [0000200000 - 0000adb3d4]
#4 [0000008000 - 0000030000] PGTABLE ==> [0000008000 - 0000030000]
found SMP MP-table at [ffff8800000fbb60] 000fbb60
Zone PFN ranges:
DMA 0x00000000 -> 0x00001000
DMA32 0x00001000 -> 0x00100000
Normal 0x00100000 -> 0x00100000
Movable zone start PFN for each node
early_node_map[3] active PFN ranges
0: 0x00000000 -> 0x0000009f
0: 0x00000100 -> 0x00000adc
0: 0x00000b0f -> 0x00006306
ACPI: PM-Timer IO Port: 0xb008
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] disabled)
ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] disabled)
ACPI: LAPIC (acpi_id[0x03] lapic_id[0x03] disabled)
ACPI: LAPIC (acpi_id[0x04] lapic_id[0x04] disabled)
ACPI: LAPIC (acpi_id[0x05] lapic_id[0x05] disabled)
ACPI: LAPIC (acpi_id[0x06] lapic_id[0x06] disabled)
ACPI: LAPIC (acpi_id[0x07] lapic_id[0x07] disabled)
ACPI: LAPIC (acpi_id[0x08] lapic_id[0x08] disabled)
ACPI: LAPIC (acpi_id[0x09] lapic_id[0x09] disabled)
ACPI: LAPIC (acpi_id[0x0a] lapic_id[0x0a] disabled)
ACPI: LAPIC (acpi_id[0x0b] lapic_id[0x0b] disabled)
ACPI: LAPIC (acpi_id[0x0c] lapic_id[0x0c] disabled)
ACPI: LAPIC (acpi_id[0x0d] lapic_id[0x0d] disabled)
ACPI: LAPIC (acpi_id[0x0e] lapic_id[0x0e] disabled)
ACPI: LAPIC (acpi_id[0x0f] lapic_id[0x0f] disabled)
ACPI: IOAPIC (id[0x01] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 1, version 0, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level)
Using ACPI (MADT) for SMP configuration information
PM: Registered nosave memory: 000000000009f000 - 00000000000a0000
PM: Registered nosave memory: 00000000000a0000 - 0000000000100000
PM: Registered nosave memory: 0000000000adc000 - 0000000000b0f000
Allocating PCI resources starting at 10000000 (gap: 8000000:f7fbd000)
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 22534
Kernel command line: console=tty0 xencons=ttyS0,115200 console=hvc0
earlyprintk=xen root=/dev/vg/root ro nopat noacpi
Initializing CPU#0
xen: allocated irq 9 for acpi 9
PID hash table entries: 512 (order: 9, 4096 bytes)
Detected 1996.258 MHz processor.
Console: colour VGA+ 80x25
console [tty0] enabled
console handover: boot [xenboot0] -> real [hvc0]
Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)
Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
Checking aperture...
No AGP bridge found
PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
Placing 64MB software IO TLB between ffff8800012c5000 - ffff8800052c5000
software IO TLB at phys 0x12c5000 - 0x52c5000
Memory: 23464k/101400k available (4673k kernel code, 592k absent, 77280k
reserved, 1715k data, 1592k init)
SLUB: Genslabs=12, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
installing Xen timer for CPU 0
Calibrating delay loop (skipped), value calculated using timer frequency..
3994.87 BogoMIPS (lpj=6654193)
Mount-cache hash table entries: 256
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)
CPU: AMD QEMU Virtual CPU version 0.9.1 stepping 03
(XEN) domain.c:493:d0 Attempt to change CR4 flags 00000660 -> 00000620
ACPI: Core revision 20080926
BUG: scheduling while atomic: kthreadd/2/0x00000000
(XEN) domain_crash_sync called from entry.S
(XEN) Domain 0 (vcpu#0) crashed on cpu#0:
(XEN) ----[ Xen-3.4-unstable x86_64 debug=n Not tainted ]----
(XEN) CPU: 0
(XEN) RIP: e033:[<ffffffff806868bd>]
(XEN) RFLAGS: 0000000000000246 EM: 0 CONTEXT: pv guest
(XEN) rax: ffff880005c39fd8 rbx: ffffffffff517000 rcx: 00000000ffffffff
(XEN) rdx: 00000000ffffffff rsi: 00000000000017dd rdi: 0000000000000000
(XEN) rbp: 0000000000000000 rsp: ffff880005c23ee0 r8: 0000000000000000
(XEN) r9: 0000000000000001 r10: 0000000000000000 r11: ffffffff8041f5b0
(XEN) r12: ffffffff80a8aa77 r13: 0000000000000037 r14: 0000000000000800
(XEN) r15: ffff880005c37e90 cr0: 000000008005003b cr4: 00000000000006f0
(XEN) cr3: 0000000004201000 cr2: 0000000000000000
(XEN) ds: 0000 es: 0000 fs: 0000 gs: 0000 ss: e02b cs: e033
(XEN) Guest stack trace from rsp=ffff880005c23ee0:
(XEN) 0000000000000000 0000000000000000 ffffffff8020fb30 ffffffffff517000
(XEN) ffffffff806868c7 0000000000000000 0000000000000000 ffffffff8020fb30
(XEN) ffffffffff517000 ffffffff806868c7 0000000000000000 0000000000000000
(XEN) ffffffff8020fb30 ffffffffff517000 ffffffff806868c7 0000000000000000
(XEN) 0000000000000000 ffffffff8020fb30 ffffffffff517000 ffffffff806868c7
(XEN) 0000000000000000 0000000000000000 ffffffff8020fb30 ffffffffff517000
(XEN) ffffffff806868c7 0000000000000000 0000000000000000 ffffffff8020fb30
(XEN) ffffffffff517000 ffffffff806868c7 0000000000000000 0000000000000000
(XEN) ffffffff8020fb30 ffffffffff517000 ffffffff806868c7 0000000000000000
(XEN) ffff880005c24030 ffffffff8020fb30 ffffffffff517000 ffffffff806868c3
(XEN) 0000000000000000 0000000000000000 ffffffff8020fb30 ffffffffff517000
(XEN) ffffffff806868c3 0000000000000000 0000000000000001 ffffffff8020fb30
(XEN) ffffffffff517000 ffffffff806868c3 0000000000000000 0000000000000000
(XEN) ffffffff8020fb30 ffffffffff517000 ffffffff806868c3 0000000000000000
(XEN) 0000000000000000 ffffffff8020fb30 ffffffffff517000 ffffffff806868c3
(XEN) 0000000000000000 6c754e0068737570 ffffffff8020fb30 ffffffffff517000
(XEN) ffffffff806868c3 0000000000000000 ffff880005c24120 ffffffff8020fb30
(XEN) ffffffffff517000 ffffffff806868c3 0000000000000000 20726f6620657461
(XEN) ffffffff8020fb30 ffffffffff517000 ffffffff806868c3 0000000000000000
(XEN) 7461745320217974 ffffffff8020fb30 ffffffffff517000 ffffffff806868c3
(XEN) Domain 0 crashed: rebooting machine in 5 seconds.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|