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/
Home Products Support Community News


Re: [Xen-devel] pvops-2.6.32 - Interrupt routing problem

To: Bastian Blank <waldi@xxxxxxxxxx>
Subject: Re: [Xen-devel] pvops-2.6.32 - Interrupt routing problem
From: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Date: Sun, 14 Mar 2010 08:56:22 -0700
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Delivery-date: Sun, 14 Mar 2010 08:57:03 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20100314152334.GA6483@xxxxxxxxxxxxxxxxxxxxxxx>
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>
References: <20100310111923.GA7087@xxxxxxxxxxxxxxxxxxxxxxx> <20100314140813.GA5309@xxxxxxxxxxxxxxxxxxxxxxx> <20100314152334.GA6483@xxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv: Gecko/20100301 Fedora/3.0.3-1.fc12 Lightning/1.0b2pre Thunderbird/3.0.3
On 03/14/2010 08:23 AM, Bastian Blank wrote:
On Sun, Mar 14, 2010 at 03:08:14PM +0100, Bastian Blank wrote:
On Wed, Mar 10, 2010 at 12:19:23PM +0100, Bastian Blank wrote:
I was able to test Xen 3.4.3-rc3 and the current 2.6.32 tree on a
HP DL385 G6.
It also happens with Xen 4.0.0-rc6.
Oops, I'm blind:

-IOAPIC[0]: apic_id 8, version 17, address 0xfec00000, GSI 0-15
+IOAPIC[0]: apic_id 8, version 0, address 0xfec00000, GSI 0-0
  ACPI: IOAPIC (id[0x09] address[0xfec01000] gsi_base[16])
-IOAPIC[1]: apic_id 9, version 17, address 0xfec01000, GSI 16-31
+IOAPIC[1]: apic_id 9, version 0, address 0xfec01000, GSI 16-16
  ACPI: IOAPIC (id[0x0a] address[0xfec02000] gsi_base[32])
-IOAPIC[2]: apic_id 10, version 17, address 0xfec02000, GSI 32-47
+IOAPIC[2]: apic_id 10, version 0, address 0xfec02000, GSI 32-32
+ERROR: Unable to locate IOAPIC for GSI 2
  ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level)
-ACPI: IRQ0 used by override.
-ACPI: IRQ2 used by override.
-ACPI: IRQ9 used by override.
+ERROR: Unable to locate IOAPIC for GSI 9

The kernel running on Xen does not even detect the version and GSI
ranges correctly.

That's not necessarily a problem. The normal native IOAPIC code will try to probe for IOAPICs, but they won't be detected because Xen owns them all. In the Xen case, it still depends on ACPI to get the proper device pin->gsi mapping, but then it just does a hypercall to bind the gsi to an event channel.

However something caught my attention.

>  |  5: xen-pirq-ioapic-edge  ehci_hcd:usb1, ohci_hcd:usb2, ohci_hcd:usb4
>  [    1.626062] ehci_hcd 0000:00:07.2: PCI INT A ->  Link[IUSB] ->  GSI 5 
(level, low) ->  IRQ 5
> | 14: xen-pirq-ioapic-edge sata_svw
>  [    1.718903] sata_svw 0000:01:0e.0: PCI INT A ->  Link[ISF0] ->  GSI 14 
(level, low) ->  IRQ 14
The interrupts are enabled as edge driven, but are reported by ACPI as
level triggered.

Yep, that's going to be a problem. I guess there's some typo in there which is mixing up level and edge in some circumstance (it can't be global because otherwise nothing would work). It's interesting your devices both have GSIs in the "legacy ISA" range (< 16); I wonder if something somewhere is misdescribing the interrupts.

Could you post full boot logs for the kernel booting both native and under Xen to see how they differ?


Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>