[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Re: how to handle paged hypercall args?
On Thu, Nov 18, Keir Fraser wrote: > I've done something along these lines now as xen-unstable:22402. It actually > seems to work okay! So you can go ahead and use waitqueues in __hvm_copy() > now. My first attempt with the patch I sent crashed like this. Two threads run into a non-empty list: prepare_to_wait check_wakeup_from_wait I could not reproduce this. Right now I'm running with a modified xenpaging policy which pages just the pagetable gfns around gfn 0x1800. But that almost stalls the guest due to the continous paging. Any ideas how this crash can happen? Olaf .................... Welcome to SUSE Linux Enterprise Server 11 SP1 (x86_64) - Kernel 2.6.32.24-20101117.152845-xen (console). stein-schneider login: (XEN) memory.c:145:d0 Could not allocate order=9 extent: id=1 memflags=0 (2 of 4) (XEN) memory.c:145:d0 Could not allocate order=9 extent: id=1 memflags=0 (0 of 3) [ 102.139380] (cdrom_add_media_watch() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=108) nodename:backend/vbd/1/768 [ 102.171632] (cdrom_is_type() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=95) type:0 [ 102.209310] device vif1.0 entered promiscuous mode [ 102.221776] br0: port 2(vif1.0) entering forwarding state [ 102.490897] OLH gntdev_open(449) xend[5202]->qemu-dm[5324] i ffff8800f2420720 f ffff8800f1c2f980 [ 102.733559] ip_tables: (C) 2000-2006 Netfilter Core Team [ 102.888335] nf_conntrack version 0.5.0 (16384 buckets, 65536 max) [ 103.241995] (cdrom_add_media_watch() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=108) nodename:backend/vbd/1/5632 [ 103.274444] (cdrom_is_type() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=95) type:1 [ 103.301481] (cdrom_add_media_watch() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=110) is a cdrom [ 103.331978] (cdrom_add_media_watch() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=112) xenstore wrote OK [ 103.362764] (cdrom_is_type() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=95) type:1 [ 104.538376] (cdrom_add_media_watch() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=108) nodename:backend/vbd/1/832 [ 104.570669] (cdrom_is_type() file=/usr/src/packages/BUILD/kernel-xen-2.6.32.24/linux-2.6.32/drivers/xen/blkback/cdrom.c, line=95) type:0 [ 112.401097] vif1.0: no IPv6 routers present (XEN) HVM1: HVM Loader (XEN) HVM1: Detected Xen v4.1.22433-20101126 (XEN) HVM1: CPU speed is 2667 MHz (XEN) HVM1: Xenbus rings @0xfeffc000, event channel 5 (XEN) irq.c:258: Dom1 PCI link 0 changed 0 -> 5 (XEN) HVM1: PCI-ISA link 0 routed to IRQ5 (XEN) irq.c:258: Dom1 PCI link 1 changed 0 -> 10 (XEN) HVM1: PCI-ISA link 1 routed to IRQ10 (XEN) irq.c:258: Dom1 PCI link 2 changed 0 -> 11 (XEN) HVM1: PCI-ISA link 2 routed to IRQ11 (XEN) irq.c:258: Dom1 PCI link 3 changed 0 -> 5 (XEN) HVM1: PCI-ISA link 3 routed to IRQ5 (XEN) HVM1: pci dev 01:3 INTA->IRQ10 (XEN) HVM1: pci dev 03:0 INTA->IRQ5 (XEN) HVM1: pci dev 02:0 bar 10 size 02000000: f0000008 (XEN) HVM1: pci dev 03:0 bar 14 size 01000000: f2000008 (XEN) HVM1: pci dev 02:0 bar 14 size 00001000: f3000000 (XEN) HVM1: pci dev 03:0 bar 10 size 00000100: 0000c001 (XEN) HVM1: pci dev 01:1 bar 20 size 00000010: 0000c101 (XEN) HVM1: Multiprocessor initialisation: (XEN) HVM1: - CPU0 ... 40-bit phys ... fixed MTRRs ... var MTRRs [2/8] ... done. (XEN) HVM1: - CPU1 ... 40-bit phys ... fixed MTRRs ... var MTRRs [2/8] ... done. (XEN) HVM1: - CPU2 ... 40-bit phys ... fixed MTRRs ... var MTRRs [2/8] ... done. (XEN) HVM1: - CPU3 ... 40-bit phys ... fixed MTRRs ... var MTRRs [2/8] ... done. (XEN) HVM1: Testing HVM environment: (XEN) HVM1: - REP INSB across page boundaries ... passed (XEN) HVM1: - GS base MSRs and SWAPGS ... passed (XEN) HVM1: Passed 2 of 2 tests (XEN) HVM1: Writing SMBIOS tables ... (XEN) HVM1: Loading ROMBIOS ... (XEN) HVM1: 9660 bytes of ROMBIOS high-memory extensions: (XEN) HVM1: Relocating to 0xfc000000-0xfc0025bc ... done (XEN) HVM1: Creating MP tables ... (XEN) HVM1: Loading Cirrus VGABIOS ... (XEN) HVM1: Loading ACPI ... (XEN) HVM1: - Lo data: 000ea020-000ea04f (XEN) HVM1: - Hi data: fc002800-fc01291f (XEN) HVM1: vm86 TSS at fc012c00 (XEN) HVM1: BIOS map: (XEN) HVM1: c0000-c8fff: VGA BIOS (XEN) HVM1: eb000-eb1d9: SMBIOS tables (XEN) HVM1: f0000-fffff: Main BIOS (XEN) HVM1: E820 table: (XEN) HVM1: [00]: 00000000:00000000 - 00000000:0009e000: RAM (XEN) HVM1: [01]: 00000000:0009e000 - 00000000:0009fc00: RESERVED (XEN) HVM1: [02]: 00000000:0009fc00 - 00000000:000a0000: RESERVED (XEN) HVM1: HOLE: 00000000:000a0000 - 00000000:000e0000 (XEN) HVM1: [03]: 00000000:000e0000 - 00000000:00100000: RESERVED (XEN) HVM1: [04]: 00000000:00100000 - 00000000:40000000: RAM (XEN) HVM1: HOLE: 00000000:40000000 - 00000000:fc000000 (XEN) HVM1: [05]: 00000000:fc000000 - 00000001:00000000: RESERVED (XEN) HVM1: Invoking ROMBIOS ... (XEN) HVM1: $Revision: 1.221 $ $Date: 2008/12/07 17:32:29 $ (XEN) stdvga.c:147:d1 entering stdvga and caching modes (XEN) HVM1: VGABios $Id: vgabios.c,v 1.67 2008/01/27 09:44:12 vruppert Exp $ (XEN) HVM1: Bochs BIOS - build: 06/23/99 (XEN) HVM1: $Revision: 1.221 $ $Date: 2008/12/07 17:32:29 $ (XEN) HVM1: Options: apmbios pcibios eltorito PMM (XEN) HVM1: (XEN) HVM1: ata0-0: PCHS=8322/16/63 translation=lba LCHS=522/255/63 (XEN) HVM1: ata0 master: QEMU HARDDISK ATA-7 Hard-Disk (4096 MBytes) (XEN) HVM1: ata0-1: PCHS=16383/16/63 translation=lba LCHS=1024/255/63 (XEN) HVM1: ata0 slave: QEMU HARDDISK ATA-7 Hard-Disk (43008 MBytes) (XEN) HVM1: ata1 master: QEMU DVD-ROM ATAPI-4 CD-Rom/DVD-Rom (XEN) HVM1: IDE time out (XEN) HVM1: (XEN) HVM1: (XEN) HVM1: (XEN) HVM1: Press F12 for boot menu. (XEN) HVM1: (XEN) HVM1: Booting from Hard Disk... (XEN) HVM1: Booting from 0000:7c00 (XEN) HVM1: int13_harddisk: function 41, unmapped device for ELDL=82 (XEN) HVM1: int13_harddisk: function 08, unmapped device for ELDL=82 (XEN) HVM1: *** int 15h function AX=00c0, BX=0000 not yet supported! (XEN) HVM1: *** int 15h function AX=ec00, BX=0002 not yet supported! (XEN) HVM1: KBD: unsupported int 16h function 03 (XEN) HVM1: *** int 15h function AX=e980, BX=0000 not yet supported! (XEN) HVM1: int13_harddisk: function 41, unmapped device for ELDL=82 (XEN) HVM1: int13_harddisk: function 02, unmapped device for ELDL=82 (XEN) HVM1: int13_harddisk: function 41, unmapped device for ELDL=83 (XEN) HVM1: int13_harddisk: function 02, unmapped device for ELDL=83 (XEN) HVM1: int13_harddisk: function 41, unmapped device for ELDL=84 (XEN) HVM1: int13_harddisk: function 02, unmapped device for ELDL=84 (XEN) HVM1: int13_harddisk: function 41, unmapped device for ELDL=85 (XEN) HVM1: int13_harddisk: function 02, unmapped device for ELDL=85 (XEN) HVM1: int13_harddisk: function 41, unmapped device for ELDL=86 (XEN) HVM1: int13_harddisk: function 02, unmapped device for ELDL=86 (XEN) HVM1: int13_harddisk: function 41, unmapped device for ELDL=87 (XEN) HVM1: int13_harddisk: function 02, unmapped device for ELDL=87 (XEN) HVM1: int13_harddisk: function 41, ELDL out of range 88 (XEN) HVM1: int13_harddisk: function 02, ELDL out of range 88 (XEN) HVM1: int13_harddisk: function 41, ELDL out of range 89 (XEN) HVM1: int13_harddisk: function 02, ELDL out of range 89 (XEN) HVM1: int13_harddisk: function 41, ELDL out of range 8a (XEN) HVM1: int13_harddisk: function 02, ELDL out of range 8a (XEN) HVM1: int13_harddisk: function 41, ELDL out of range 8b (XEN) HVM1: int13_harddisk: function 02, ELDL out of range 8b (XEN) HVM1: int13_harddisk: function 41, ELDL out of range 8c (XEN) HVM1: int13_harddisk: function 02, ELDL out of range 8c (XEN) HVM1: int13_harddisk: function 41, ELDL out of range 8d (XEN) HVM1: int13_harddisk: function 02, ELDL out of range 8d (XEN) HVM1: int13_harddisk: function 41, ELDL out of range 8e (XEN) HVM1: int13_harddisk: function 02, ELDL out of range 8e (XEN) HVM1: int13_harddisk: function 41, ELDL out of range 8f (XEN) HVM1: int13_harddisk: function 02, ELDL out of range 8f (XEN) vlapic.c:699:d1 Local APIC Write to read-only register 0x30 (XEN) vlapic.c:699:d1 Local APIC Write to read-only register 0x20 (XEN) vlapic.c:699:d1 Local APIC Write to read-only register 0x20 (XEN) irq.c:258: Dom1 PCI link 0 changed 5 -> 0 (XEN) irq.c:258: Dom1 PCI link 1 changed 10 -> 0 (XEN) irq.c:258: Dom1 PCI link 2 changed 11 -> 0 (XEN) irq.c:258: Dom1 PCI link 3 changed 5 -> 0 (XEN) grant_table.c:1414:d1 Fault while reading gnttab_query_size_t. (XEN) grant_table.c:1414:d1 Fault while reading gnttab_query_size_t. (XEN) irq.c:324: Dom1 callback via changed to PCI INTx Dev 0x03 IntA [ 165.316278] blkback: ring-ref 8, event-channel 9, protocol 1 (x86_64-abi) [ 165.330911] alloc irq_desc for 886 on node 0 [ 165.337115] alloc kstat_irqs on node 0 [ 165.351993] blkback: ring-ref 9, event-channel 10, protocol 1 (x86_64-abi) [ 165.366824] alloc irq_desc for 887 on node 0 [ 165.372089] alloc kstat_irqs on node 0 [ 165.387424] blkback: ring-ref 10, event-channel 11, protocol 1 (x86_64-abi) [ 165.402453] alloc irq_desc for 888 on node 0 [ 165.409108] alloc kstat_irqs on node 0 (XEN) grant_table.c:1414:d1 Fault while reading gnttab_query_size_t. [ 168.016706] alloc irq_desc for 889 on node 0 [ 168.020103] alloc kstat_irqs on node 0 (XEN) Xen BUG at wait.c:118 (XEN) Assertion 'list_empty(&wqv->list)' failed at wait.c:130 (XEN) Debugging connection not set up. (XEN) Debugging connection not set up. (XEN) ----[ Xen-4.1.22433-20101126.164804 x86_64 debug=y Tainted: C ]---- (XEN) ----[ Xen-4.1.22433-20101126.164804 x86_64 debug=y Tainted: C ]---- (XEN) CPU: 1 (XEN) CPU: 3 (XEN) RIP: e008:[<ffff82c4801285c1>]RIP: e008:[<ffff82c4801283ab>] prepare_to_wait+0xf0/0x10f (XEN) RFLAGS: 0000000000010212 check_wakeup_from_wait+0x27/0x61CONTEXT: hypervisor (XEN) (XEN) RFLAGS: 0000000000010293 rax: 0000000000000000 rbx: ffff8301337cd010 rcx: 0000000000000968 (XEN) CONTEXT: hypervisor (XEN) rdx: ffff83013e737f18 rsi: ffff83013e7375b0 rdi: ffff8301337cd030 (XEN) rax: ffff8301337cd620 rbx: ffff830012b72000 rcx: 0000000000000000 (XEN) rbp: ffff83013e737648 rsp: ffff83013e737628 r8: ffff830138439f60 (XEN) rdx: ffff83013e707f18 rsi: 0000000000000003 rdi: ffff830012b73860 (XEN) r9: 000000000011622f r10: ffff83013e737950 r11: ffffffff8101f230 (XEN) rbp: ffff83013e707cb0 rsp: ffff83013e707cb0 r8: 0000000000000013 (XEN) r12: ffff83013e737668 r13: ffff8301337cd010 r14: ffff830012b74000 (XEN) r9: 0000ffff0000ffff r10: 00ff00ff00ff00ff r11: 0f0f0f0f0f0f0f0f (XEN) r15: ffffffffff5fb300 cr0: 000000008005003b cr4: 00000000000026f0 (XEN) r12: 0000000000000003 r13: ffff8300bf2fa000 r14: 0000002e80873e97 (XEN) cr3: 000000013444c000 cr2: ffffe8ffffc00000 (XEN) r15: ffff830012b72000 cr0: 000000008005003b cr4: 00000000000026f0 (XEN) ds: 0000 es: 0000 fs: 0000 gs: 0000 ss: 0000 cs: e008 (XEN) cr3: 00000001347e5000 cr2: 00007f1c79acf000 (XEN) Xen stack trace from rsp=ffff83013e737628: (XEN) ds: 002b es: 002b fs: 0000 gs: 0000 ss: e010 cs: e008 (XEN) 0000000000000004Xen stack trace from rsp=ffff83013e707cb0: (XEN) 0000000000000003 ffff83013e707cf0 0000000000000004 ffff82c4801ab935 ffff83013e7379b0 ffff83013e707d10 (XEN) ffff830012b72000 ffff83013e7376b8 (XEN) ffff82c4801ac622 0000000000000003 ffff83013e7376f0 ffff8300bf2fa000 ffff83013e737668 0000002e80873e97 (XEN) ffff83013e70c040 000000000fff0001 (XEN) ffff8301337cd010 ffff83013e707d10 ffff8301337cd010 ffff82c4801c29eb 0000000000000004 (XEN) 0000002e80873e97 000000033e737bc8 ffff830012b72000 0000000000000000 (XEN) 0000000000000003 ffff83013e707e10 0000000000000004 ffff82c480157913 (XEN) 0000000000000008 ffff83013e737bc8 ffff830012b74000 0000000000000000 ffff83013e737728 (XEN) ffff82c4801a6460 0000000000000000 (XEN) 0000000000000000 ffff83013e7376f8 0000000000000002 0000000000000001 0000002e80873cb4 ffff83013e7379b0 (XEN) 000000000000008b ffff82c4802e58c0 (XEN) ffff82c4802e58c0 00000000fee00310 ffff83013e707dc0 0000000000000001 0000000000000282 ffffffffff5fb300 (XEN) 0000000000000089 ffff82c48014d4a1 (XEN) 0000002e80873e97 0000000000000000 ffff83013e707e40 0000000000000000 0000000000000000 00000003c18f8247 0000000000000000 (XEN) (XEN) ffff83013e77b5c0 ffff83013e737b28 0000000000000000 ffff82c48019179c ffff83013e707e00 ffff83013e737748 ffff82c48017a38b ffff82c480175d52 (XEN) (XEN) 0000000000000392 ffff83013e737768 0000003a19e31b9c 0000000280175df4 0000000000000000 000000003e6295a0 0000000000000000 ffff8301388e6f50 (XEN) (XEN) 0000000000000000 00007cfec18c8867 0000000000000000 ffff82c4802587c0 ffff83013e707e10 ffff83013e737bc8 ffff830012b72000 0000000012b74000 (XEN) (XEN) ffff8300bf2fa000 000000d600d60001 0000000000000001 ffff830138092000 0000002e80873e97 0000000000000000 ffff83013e70c040 25d68301388e6f50 (XEN) (XEN) ffff83013e707e90 0000000000000005 ffff82c480120fbe 00000000000ca8e4 ffff83013e707e40 000000000011622f 0000002e80873e97 0000000000000011 (XEN) (XEN) ffff83013e70c100 0000000139401004 ffff83013e767dd8 0000000000000000 ffff830012b72000 ffff83013e7377e8 0000000001c9c380 00ff82c480175d52 (XEN) (XEN) ffff83013e707e00 ffff83013e737800 ffff83013e70c100 ffff82c480175df4 ffff83013e767f20 ffff82c480122204 0000000000000003 ffff8301388e6f50 (XEN) (XEN) 0000000000000003 00000004388e6f50 ffff82c4802b3f00 0000000800000008 ffff83013e707f18 0000000000000000 ffffffffffffffff 00000004ffffffff (XEN) (XEN) ffff83013e707ed0 0000000400000001 ffff82c4801220d7 ffff82c4802022e9 ffff82c4802b3f00 ffff83013e7378c8 ffff83013e707f18 ffff83013e737888 (XEN) (XEN) ffff82c48025dbe0 0000000000000010 ffff83013e707f18 0000000300000000 0000002e805c506e ffff83013e73793c ffff83013e70c040 000000000000180a (XEN) (XEN) 0000000100000000 ffff83013e707ee0 0000000000000003 ffff82c480122152 00000000388e6f50 ffff83013e707f10 000000000000000a ffff82c480155619 (XEN) (XEN) ffff83013942d000 0000000000000000 0000000000119285 ffff8300bf2fa000 ffff83013e737998 0000000000000003 0000000000000000 (XEN) ffff8300bf2f6000Xen call trace: (XEN) (XEN) [<ffff82c4801285c1>] ffff83013e707d38 prepare_to_wait+0xf0/0x10f (XEN) 0000000000000000[<ffff82c4801ac622>] 0000000000000000 hvm_copy_to_guest_virt+0x65/0xb0 (XEN) 0000000000000000[<ffff82c4801a6460>] (XEN) Xen call trace: (XEN) hvmemul_write+0x113/0x1a2 (XEN) [<ffff82c4801283ab>][<ffff82c48019179c>] check_wakeup_from_wait+0x27/0x61 (XEN) [<ffff82c4801ab935>] x86_emulate+0xe296/0x110ae (XEN) [<ffff82c4801a563f>] hvm_do_resume+0x29/0x1aa (XEN) [<ffff82c4801c29eb>] hvm_emulate_one+0x103/0x192 (XEN) [<ffff82c4801b08ee>] vmx_do_resume+0x1bc/0x1db (XEN) [<ffff82c480157913>] handle_mmio+0x4e/0x17d (XEN) [<ffff82c4801c844f>] context_switch+0xdbf/0xddb (XEN) [<ffff82c480120fbe>] vmx_vmexit_handler+0x173f/0x1d2c (XEN) (XEN) schedule+0x5f3/0x619 (XEN) (XEN) **************************************** (XEN) [<ffff82c4801220d7>]Panic on CPU 1: (XEN) __do_softirq+0x88/0x99 (XEN) Xen BUG at wait.c:118 (XEN) [<ffff82c480122152>]**************************************** (XEN) (XEN) do_softirq+0x6a/0x7a (XEN) Reboot in five seconds... (XEN) [<ffff82c480155619>]Debugging connection not set up. (XEN) idle_loop+0x64/0x66 (XEN) Resetting with ACPI MEMORY or I/O RESET_REG.Ã[00m[37m[40m _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |