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

Re: [Xen-devel] Crash during boot in Debian lenny default dom0 kernel (2.6.26-2-xen-686)


  • To: "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx>
  • From: George Dunlap <George.Dunlap@xxxxxxxxxxxxx>
  • Date: Thu, 25 Feb 2010 10:48:24 +0000
  • Cc: Sander Eikelenboom <linux@xxxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Thu, 25 Feb 2010 02:49:00 -0800
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=EUcRtm3JCz+GPXV0HRl5UZi46t/H4hs1JQ7juY1k39+55Te0+NtynKhGj3Fk+VKfI0 Ugbkg2Wb+MmaqeD80c3NxhN/psLkWv4SMoF/8AzizB9GR4btFS5YiLtUTJrsdD0au4kJ rL3xgLQCEjGSaR53MtyNFpBeXYu+SMZfdYcls=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

$ addr2line -e xen/xen-syms 0xffff82c4801535a9
/xensource/hg/open-source/xen-unstable.hg/xen/arch/x86/msi.c:588

Which in my code is:
    /* Mask interrupt here */
    writel(1, entry->mask_base + PCI_MSIX_ENTRY_VECTOR_CTRL_OFFSET);

And tracing back, ->mask_base is computed in part with table_base
(which as Jan pointed out, seems borked).

Hmm... Jan said according to the stack:
.table_base = f5861e4a00000001

Is it possible that there's actually a bug in the compat code, and
that table_base actually *was* set to (uint32_t)1?  If a reasonable
number for table_base is "1", giving it 64 bits in the structure would
seem a bit like overkill...

 -George

On Thu, Feb 25, 2010 at 6:50 AM, Jiang, Yunhong <yunhong.jiang@xxxxxxxxx> wrote:
> Agree that Xen should not crash on such situation.
>
> Since it is enabling MSI, I try to check the code in __pci_enable_msi(), and 
> didn't find any suspicious code. As 0x ffff82c3ffeb614d is at ioremap range, 
> I suspect it is about msix fixmap, but still didn't find any hint.
> The page table walk is a bit strange to me. The L1 entry is suspicious, seems 
> it clobered.
> Can you share the code around the fault IP address?
>
> --jyh
>
>
> (XEN) Pagetable walk from ffff82c3ffeb614d:
> (XEN)  L4[0x105] = 00000000bf4e2027 5555555555555555
> (XEN)  L3[0x10f] = 00000000bf698063 5555555555555555
> (XEN)  L2[0x1ff] = 00000000bf697063 5555555555555555
> (XEN)  L1[0x0b6] = f5861e4a00100173 ffffffffffffffff
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 15:
> (XEN) FATAL PAGE FAULT
> (XEN) [error_code=000b]
> (XEN) Faulting linear address: ffff82c3ffeb614d
> (XEN) ****************************************
>
>
>
>>-----Original Message-----
>>From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>[mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of George Dunlap
>>Sent: Thursday, February 25, 2010 7:58 AM
>>To: Pasi Kärkkäinen
>>Cc: Sander Eikelenboom; xen-devel@xxxxxxxxxxxxxxxxxxx
>>Subject: Re: [Xen-devel] Crash during boot in Debian lenny default dom0 kernel
>>(2.6.26-2-xen-686)
>>
>>pci=nomsi in the guest command line?
>>
>>I realize dom0 is a privileged guest, but it still seems like we
>>should try not to crash Xen as a result on guest input. :-)
>>
>>Thanks for the work-around,
>> -George
>>
>>On Wed, Feb 24, 2010 at 8:20 PM, Pasi Kärkkäinen <pasik@xxxxxx> wrote:
>>> On Wed, Feb 24, 2010 at 08:08:10PM +0100, Sander Eikelenboom wrote:
>>>>
>>>> Wasn't pci=nomsi required for those kernels ?
>>>>
>>>
>>> Yeah, pci=nomsi has been the workaround for this bug..
>>> Many people have seen (and reported) this bug in the lenny kernel.
>>>
>>> Would be good to hunt down the actual reason..
>>>
>>> -- Pasi
>>>
>>>>
>>>> Wednesday, February 24, 2010, 7:47:09 PM, you wrote:
>>>>
>>>> > I recenty tried to boot my Debian lenny distro on a newer Intel
>>>> > Nehalem box using Debian Lenny's default xen kernel
>>>> > (2.6.26-2-xen-686), and it crashed during boot.  Full log attached,
>>>> > but the key info is here:
>>>>
>>>> > I tried doing a "binary search" to see where this was introduced, but
>>>> > it fails the same way all the way back to c/s 20000.
>>>>
>>>> > The same kernel/hypervisor combination boots fine on a different box I 
>>>> > have.
>>>>
>>>> >  -George
>>>>
>>>> > (XEN) ----[ Xen-4.0.0-rc4  x86_64  debug=n  Tainted:    C ]----
>>>> > (XEN) CPU:    15
>>>> > (XEN) RIP:    e008:[<ffff82c4801535a9>] pci_enable_msi+0x4c9/0x580
>>>> > (XEN) RFLAGS: 0000000000010282   CONTEXT: hypervisor
>>>> > (XEN) rax: ffff82c3ffeb6141   rbx: 0000000000000000   rcx:
>>ffff830828b0e690
>>>> > (XEN) rdx: ffff830828b0e718   rsi: ffff8300bf6975b0   rdi: 
>>>> > ffff830828b0e6e0
>>>> > (XEN) rbp: ffff83082cd7fec8   rsp:
>>ffff83082cd7fd88   r8:  0000000000000005
>>>> > (XEN) r9:  ffff830828b0e700   r10: 00000000000000a8   r11:
>>0000000000000040
>>>> > (XEN) r12: ffff830828b0e710   r13: ffff830828b0e670   r14: 
>>>> > ffff83082cd7fe38
>>>> > (XEN) r15: 0000000000000000   cr0: 000000008005003b   cr4:
>>00000000000026f0
>>>> > (XEN) cr3: 000000043fdcf000   cr2: ffff82c3ffeb614d
>>>> > (XEN) ds: 007b   es: 007b   fs: 00d8   gs: 0000   ss: 0000   cs: e008
>>>> > (XEN) Xen stack trace from rsp=ffff83082cd7fd88:
>>>> > (XEN)    0000000000000246 ffff830828b0e6e0 0000000080000000
>>0000000100000000
>>>> > (XEN)    3408000000000000 0000000200000000 000f5861e4a00100
>>0000000000000141
>>>> > (XEN)    ffff83082cd71ec8 ffff83082cd7fec8 0000000000000136
>>ffff83082cd60000
>>>> > (XEN)    0000000000000038 00000000ffffffed 0000000000000000
>>ffff82c480154832
>>>> > (XEN)    00000000000004d8 0000000000000038 00000000000000e0
>>ffff83083fd81c80
>>>> > (XEN)    ffff830828b0e670 00000000f5861e0c 0000000000000000
>>ffff83082cd60000
>>>> > (XEN)    ffff83082cd400f0 00000000f5861e0c 0000000000000136
>>0000000000000038
>>>> > (XEN)    ffff83082cd7fec8 ffff82c4801ede5f 7265646e776f206f
>>ffff82c48024c080
>>>> > (XEN)    ffff83082cd60180 ffff83082cd7fe98 0000000000007ff0 
>>>> > ffffffffffffffff
>>>> > (XEN)    0000000800000000 0000000100000000 ffff8308f5861e4a
>>ffff82c4802eaa80
>>>> > (XEN)    0000000800000000 0000000000000038 f5861e4a00000001
>>000000000000000f
>>>> > (XEN)    ffffffffffffffff ffff8300bf2e8000 0000000000000035
>>0000000000000000
>>>> > (XEN)    0000000000000000 0000000000000000 0000000000000000
>>ffff82c4801ef863
>>>> > (XEN)    0000000000000000 0000000000000000 0000000000000000
>>0000000000000000
>>>> > (XEN)    0000000000000035 000000000000000d 0000000000000000
>>0000000000000000
>>>> > (XEN)    0000000000000000 0000000000000000 0000000000000021
>>00000000f5861e0c
>>>> > (XEN)    00000000c033741f 00000000ffffffff 0000000000000000
>>0000010000000000
>>>> > (XEN)    00000000c0101427 0000000000000061 0000000000000286
>>00000000f5861e08
>>>> > (XEN)    0000000000000069 0000000000000000 0000000000000000
>>0000000000000000
>>>> > (XEN)    0000000000000000 000000000000000f ffff8300bf2e8000
>>>> > (XEN) Xen call trace:
>>>> > (XEN)    [<ffff82c4801535a9>] pci_enable_msi+0x4c9/0x580
>>>> > (XEN)    [<ffff82c480154832>] map_domain_pirq+0x242/0x2f0
>>>> > (XEN)    [<ffff82c4801ede5f>] compat_physdev_op+0xc8f/0x1010
>>>> > (XEN)    [<ffff82c4801ef863>] compat_hypercall+0x83/0x90
>>>> > (XEN)
>>>> > (XEN) Pagetable walk from ffff82c3ffeb614d:
>>>> > (XEN)  L4[0x105] = 00000000bf4e2027 5555555555555555
>>>> > (XEN)  L3[0x10f] = 00000000bf698063 5555555555555555
>>>> > (XEN)  L2[0x1ff] = 00000000bf697063 5555555555555555
>>>> > (XEN)  L1[0x0b6] = f5861e4a00100173 ffffffffffffffff
>>>> > (XEN)
>>>> > (XEN) ****************************************
>>>> > (XEN) Panic on CPU 15:
>>>> > (XEN) FATAL PAGE FAULT
>>>> > (XEN) [error_code=000b]
>>>> > (XEN) Faulting linear address: ffff82c3ffeb614d
>>>> > (XEN) ****************************************
>>>>
>>>>
>>>>
>>>> --
>>>> Best regards,
>>>>  Sander                            mailto:linux@xxxxxxxxxxxxxx
>>>>
>>>>
>>>> _______________________________________________
>>>> 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
>>>
>>
>>_______________________________________________
>>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
>

_______________________________________________
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®.