WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] irq error when pci passthrough to a domU

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] irq error when pci passthrough to a domU
From: falcon falcon <falconyyj@xxxxxxxxx>
Date: Thu, 16 Jul 2009 09:14:25 +0800
Delivery-date: Fri, 17 Jul 2009 08:07:45 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:message-id:subject :from:to:content-type; bh=VAT2tf9oaKnlCkh1GNojZWH+SnVSTCjkb4VaipqlCBU=; b=cJaSdQjFSQlWXmiNCQnBkBDW1bQHU23CGTO0HCT0aUMpM34+karYajqXdJQZuqtGc6 VB9J6N3PiKLaESjCqyZ+7F5CztXkF1nSIoVm+YSS7nkxIeoxG3vf+mCsuz+Y2kMFNXPj BA5zgPkVU8RxA2xzXkYuElHzTMoWYIDf9zLuI=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=kzze+yJMG+nID2AnZJii+a6H9SiTtWDGvc/tBBi9QOzkMZXdTQgF5Kix0eG3oKxnpN 2sKzpPAZwAosyMevQDzPNbbgDj7+LVN+WCZM7bW6KZ/c7chqzF4YLUEXfYJGz6h03sFW nu6T4jCYZ6CcoWH8/IpK2NE0foPifqDXKXcDs=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hi, all:

I'm working to pass pci device(a scsi disk) to a domU(CentOS), and my xen version is 3.3.0.  I have completed the configuration work and the domU can access this pci device now. It can identify the scsi disk and can call the related device driver. But when the driver setups irq, error occurs:
 

PCI: Enabling device 0000:02:06.1 (0000 -> 0003)

----------- [cut here ] --------- [please bite here ] ---------

Kernel BUG at ...oprj/linux-2.6.18-xen.hg/drivers/xen/core/evtchn.c:830

invalid opcode: 0000 [1] SMP

CPU 0

Modules linked in:

Pid: 1, comm: swapper Not tainted 2.6.18.8-xenU #5

RIP: e030:[<ffffffff80375ecd>]  [<ffffffff80375ecd>] evtchn_get_xen_pirq+0x1d/0x40

RSP: e02b:ffff880001941af0  EFLAGS: 00010097

RAX: 00000000ffffffff RBX: 0000000000000011 RCX: 0000000000000000

RDX: 0000000000000000 RSI: ffff88001fbb9640 RDI: 0000000000000011

RBP: ffff880001941af0 R08: ffff88001fbb9640 R09: 0000000000000015

R10: 0000000000000020 R11: 0000000000000002 R12: 0000000000000011

R13: 0000000000000880 R14: 0000000000000011 R15: ffffffff805170bc

FS:  0000000000000000(0000) GS:ffffffff80516000(0000) knlGS:0000000000000000

CS:  e033 DS: 0000 ES: 0000

Process swapper (pid: 1, threadinfo ffff880001940000, task ffff88000193f510)

Stack:  ffff880001941b90 ffffffff803762cf ffff880001941ae0 000002b000000001

 000000000000033a ffff88000194c000 0000000000000000 ffff88000194c000

 0000000000000000 0000000000000000 ffff880001941c20 ffffffff8022e5f7

Call Trace:

 [<ffffffff803762cf>] startup_pirq+0x3f/0x270

 [<ffffffff8022e5f7>] printk+0x67/0x70

 [<ffffffff802532af>] setup_irq+0x13f/0x1e0

 [<ffffffff803bda70>] ahd_linux_isr+0x0/0x1f0

 [<ffffffff802533f7>] request_irq+0xa7/0xe0

 [<ffffffff803bfb5f>] ahd_pci_map_int+0x4f/0x80

 [<ffffffff803b60c5>] ahd_pci_config+0xde5/0xe50

 [<ffffffff803bfd44>] ahd_linux_pci_dev_probe+0x174/0x250

 [<ffffffff80344c8a>] kobject_get+0x1a/0x30

 [<ffffffff80353b6c>] pci_match_device+0x1c/0xe0

 [<ffffffff80353cad>] pci_device_probe+0x5d/0xa0

 [<ffffffff803717d5>] driver_probe_device+0x65/0xd0

 [<ffffffff803718c0>] __driver_attach+0x0/0xa0

 [<ffffffff80371923>] __driver_attach+0x63/0xa0

 [<ffffffff8037107f>] bus_for_each_dev+0x4f/0x80

 [<ffffffff803716dc>] driver_attach+0x1c/0x20

 [<ffffffff80370c0d>] bus_add_driver+0x8d/0x170

 [<ffffffff80371c33>] driver_register+0x93/0xa0

 

I check the related resource code, and find that these error messages comes from the following function:

int evtchn_get_xen_pirq(int irq)
{
        if (identity_mapped_irq(irq))
                return irq;
        BUG_ON(type_from_irq(irq) != IRQT_PIRQ);
        return index_from_irq(irq);
}

This function is in drviers/xen/core/evtchn.c. It looks like the irq type is not right. Does anyone who know about it? Think you! 
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] irq error when pci passthrough to a domU, falcon falcon <=