[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] PV-GRUB crashes with FC11 PV guest.



(Corrected Samuel's email address.)

On 09/16/09 21:53, Jeremy Fitzhardinge wrote:
> On 09/16/09 08:01, Konrad Rzeszutek Wilk wrote:
>   
>> This is with cs 20189. I hadn't tried to bisect builds
>> to narrow this down.
>>
>>
>> tst070 login: 
>> Fedora release 11 (Leonidas)
>> Kernel 2.6.31-xen-01396-g12e8537 on an x86_64 (/dev/hvc0)
>>
>> tst070 login: [  407.456209] device vif2.0 entered promiscuous mode
>> [  407.470978] eth1: port 2(vif2.0) entering forwarding state
>> Bootstrapping...
>> Xen Minimal OS!
>>   start_info: 0xaa0000(VA)
>>     nr_pages: 0x20000
>>   shared_inf: 0x7f810000(MA)
>>      pt_base: 0xaa3000(VA)
>> nr_pt_frames: 0x9
>>     mfn_list: 0x9a0000(VA)
>>    mod_start: 0x0(VA)
>>      mod_len: 0
>>        flags: 0x0
>>     cmd_line: (hd0,0)/grub/menu.lst
>>   stack:      0x95f9a0-0x97f9a0
>> MM: Init
>>       _text: 0x0(VA)
>>      _etext: 0x64c8c(VA)
>>    _erodata: 0x89000(VA)
>>      _edata: 0x91b20(VA)
>> stack start: 0x95f9a0(VA)
>>        _end: 0x99ffa8(VA)
>>   start_pfn: aaf
>>     max_pfn: 20000
>> Mapping memory range 0xc00000 - 0x20000000
>> setting 0x0-0x89000 readonly
>> skipped 0x1000
>> MM: Initialise page allocator for ba9000(ba9000)-20000000(20000000)
>> MM: done
>> Demand map pfns at 20001000-2020001000.
>> Heap resides at 2020002000-4020002000.
>> Initialising timer interface
>> Initialising console ... done.
>> gnttab_table mapped at 0x20001000.
>> Initialising scheduler
>> Thread "Idle": pointer: 0x2020002050, stack: 0xcc0000
>> Initialising xenbus
>> Thread "xenstore": pointer: 0x2020002800, stack: 0xcd0000
>> Dummy main: start_info=0x97faa0
>> Thread "main": pointer: 0x2020002fb0, stack: 0xce0000
>> vbd 768 is hd0
>> ******************* BLKFRONT for device/vbd/768 **********
>>
>>
>> backend at /local/domain/0/backend/vbd/2/768
>> [  407.988989] blkback: ring-ref 2047, event-channel 4, protocol 1 
>> (x86_64-abi)
>> Failed to read /local/domain/0/backend/vbd/2/768/feature-flush-cache.
>> 76389075 sectors of 512 bytes
>> **************************
>> Thread "kbdfront": pointer: 0x2020130010, stack: 0xcf0000
>> ******************* FBFRONT for device/vfb/0 **********
>>
>>
>> ******************* KBDFRONT for device/vkbd/0 **********
>>
>>
>> Failed to read device/vfb/0/backend-id.
>> Failed to read device/vkbd/0/backend-id.
>> error writing initialized: ENOENT
>> GPF rip: 0x54d6b, error_code=0
>> Thread: main
>> RIP: e030:[<0000000000054d6b>] 
>> RSP: e02b:0000000000cefcc8  EFLAGS: 00010212
>> RAX: 0000000000000000 RBX: 0000002020002ff0 RCX: 0000000000091200
>> RDX: 0000000000001000 RSI: 2f302f6e69616d6f RDI: 00000000000919e0
>> RBP: 0000000000cefcd8 R08: 0000000000000001 R09: 0000000000000000
>> R10: 0000000000000008 R11: 000000000006cd80 R12: 2f302f6e69616d6f
>> R13: 0000000000cefd8c R14: 0000000000007118 R15: 0000000000cefd30
>> base is 0xcefcd8 caller is 0x55e2c
>> base is 0xcefcf8 caller is 0x417bb
>> base is 0xcefd18 caller is 0x4240c
>> base is 0xcefdc8 caller is 0x384d
>> base is 0xcefe78 caller is 0xdb4b
>> base is 0xcefe88 caller is 0x10eb1
>> base is 0xceff48 caller is 0x41c3
>> base is 0xceff58 caller is 0x47928
>> base is 0xceffe8 caller is 0x33da
>>
>> cefcb0: c8 fc ce 00 00 00 00 00 2b e0 00 00 00 00 00 00
>> cefcc0: 6b 4d 05 00 00 00 00 00 6f 6d 61 69 6e 2f 30 2f
>> cefcd0: 90 fd ce 00 00 00 00 00 f8 fc ce 00 00 00 00 00
>> cefce0: 2c 5e 05 00 00 00 00 00 cb e6 06 00 00 00 00 00
>>
>> cefcc0: 6b 4d 05 00 00 00 00 00 6f 6d 61 69 6e 2f 30 2f
>> cefcd0: 90 fd ce 00 00 00 00 00 f8 fc ce 00 00 00 00 00
>> cefce0: 2c 5e 05 00 00 00 00 00 cb e6 06 00 00 00 00 00
>> cefcf0: 90 3d 00 20 20 00 00 00 18 fd ce 00 00 00 00 00
>>
>> 54d50: 55 48 85 f6 48 89 e5 41 54 49 89 f4 53 48 89 fb
>> 54d60: 0f 84 bc 02 00 00 e8 85 1c 00 00 4d 8b 44 24 f8
>> 54d70: 49 8d 54 24 f0 be c0 11 09 00 4c 89 c7 48 83 e7
>> 54d80: fe 48 8d 04 3a 48 8b 48 08 48 83 e1 fc 48 39 05
>> [  409.769670] eth1: port 2(vif2.0) entering disabled state
>> [  409.777601] eth1: port 2(vif2.0) entering disabled state
>>
>> The .xm file is rather simple:
>>
>> disk = [ 'phy:/dev/sda4,hda,w' ]
>> extra = "(hd0,0)/grub/menu.lst"
>> kernel = "/usr/lib/xen/boot/pv-grub-x86_64.gz"
>> memory = 512
>> name = "FC11"
>> vif = [ 'mac=00:16:3e:00:00:11, bridge=eth1' ]
>>
>> If try to use kernel and ramdisk extracted from the disk, the
>> guest boots up fine:
>>
>> [  420.424372] device vif3.0 entered promiscuous mode
>> [  420.439713] eth1: port 2(vif3.0) entering forwarding state
>> mapping kernel into physical memory
>> about to get started...
>> (XEN) domain.c:592:d3 Attempt to change CR4 flags 00000660 -> 00000620
>> [  421.498616] blkback: ring-ref 8, event-channel 9, protocol 1 (x86_64-abi)
>> [  426.849150]   alloc irq_desc for 119 on node 0
>> [  426.849623]   alloc kstat_irqs on node 0
>> [  431.220055] vif3.0: no IPv6 routers present
>> (XEN) traps.c:2264:d3 Domain attempted WRMSR 000000000000008b from 
>> 00000017:00000000 to 00000000:00000000.
>>
>>   
>>     
> I can start a 64-bit PV guest OK, but I get a very similar-looking crash
> with 32-bit guests:
>
> Started domain f10pv32 (id=17)
>                               Xen Minimal OS!
>   start_info: 0x9d6000(VA)
>     nr_pages: 0x18000
>   shared_inf: 0x3aa43000(MA)
>      pt_base: 0x9d9000(VA)
> nr_pt_frames: 0x9
>     mfn_list: 0x976000(VA)
>    mod_start: 0x0(VA)
>      mod_len: 0
>        flags: 0x0
>     cmd_line: (hd0,0)/grub/menu.lst
>   stack:      0x954e00-0x974e00
> MM: Init
>       _text: 0x0(VA)
>      _etext: 0x65ab8(VA)
>    _erodata: 0x85000(VA)
>      _edata: 0x8a6d4(VA)
> stack start: 0x954e00(VA)
>        _end: 0x9753b4(VA)
>   start_pfn: 9e5
>     max_pfn: 18000
> Mapping memory range 0xc00000 - 0x18000000
>   Booting command-list
>
> root (hd0,0)
> Error ENOENT when reading the backend path device/vkbd/0/backend
> Page fault at linear address 0x1c, eip 0x4cdae, regs 0xb4ff7c, sp 0xb4fff0, 
> our_sp 0xb4ff50, code 2
> Thread: kbdfront
> EIP: 4cdae, EFLAGS 10002.
> EBX: 746f6f72 ECX: 00000013 EDX: 00000000
> ESI: 00b3fe98 EDI: 00000001 EBP: 00b4ffb0 EAX: 00000000
> DS: c2c2e021 ES: e021 orig_eax: ffffffff, eip: 0004cdae
> CS: 1e019 EFLAGS: 00010002 esp: 00b4fff0 ss: 37eb
> base is 0xb4ffb0 caller is 0x37eb
> base is 0xb4fff0 caller is 0x31ad
>
> b4ffe0: c2 c2 c2 c2 8f 37 00 00 9a 14 00 00 40 20 00 98
> b4fff0: 00 00 00 00 ad 31 00 00 94 fe b3 00 00 00 00 00
> b50000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> b50010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>
> b4ffa0: ff ff ff ff ae cd 04 00 19 e0 01 00 02 00 01 00
> b4ffb0: f0 ff b4 00 eb 37 00 00 00 00 00 00 01 00 00 00
> b4ffc0: c2 c2 c2 c2 c2 c2 c2 c2 c2 c2 c2 c2 c2 c2 c2 c2
> b4ffd0: c2 c2 c2 c2 c2 c2 c2 00 c2 c2 c2 c2 c2 c2 c2 c2
>
> 4cd90: e5 8b 45 08 c7 40 1c 00 00 00 00 c7 40 20 00 00
> 4cda0: 00 00 83 60 18 fe 5d c3 55 89 e5 8b 45 08 c7 40
> 4cdb0: 1c 00 00 00 00 c7 40 20 00 00 00 00 83 48 18 01
> 4cdc0: 5d c3 55 89 e5 53 83 ec 14 a1 e0 01 95 00 8b 58
> Pagetable walk from virt 1c, base 9d9000:
>   L3 = 000000003a05b027 (0x9da000)  [offset = 0]
>    L2 = 000000003a059067 (0x9dc000)  [offset = 0]
>     L1 = 0000000000000000 [offset = 0]
>
>
> I have vfb disabled.  If I have it enabled then I can (apparently) start the 
> kernel
> but I'm not seeing any output for some (likely unrelated) reason.
>
> I have a patch Samuel gave me when I first reported this, but it doesn't seem 
> to have
> helped.  I wonder if there's something else being left uninitialized?
>
>       J
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
>
>   


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.