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: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Date: Mon, 15 Mar 2010 21:31:14 -0400
Cc: Jeremy Fitzhardinge <jeremy@xxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Fraser <keir.fraser@xxxxxxxxxxxxx>, "Zhang, Xiantao" <xiantao.zhang@xxxxxxxxx>, "Keir@xxxxxxxxxxxxxxxxxxxxxxx" <Keir@xxxxxxxxxxxxxxxxxxxxxxx>
Delivery-date: Mon, 15 Mar 2010 18:59:21 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20100315211459.GA9314@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> <4B9D0726.3060304@xxxxxxxx> <20100314161750.GA7790@xxxxxxxxxxxxxxxxxxxxxxx> <EB8593BCECAB3D40A8248BE0B6400A38464169F7@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <20100315101126.GA24650@xxxxxxxxxxxxxxxxxxxxxxx> <EB8593BCECAB3D40A8248BE0B6400A38464AE52E@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <20100315211459.GA9314@xxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.19 (2009-01-05)
On Mon, Mar 15, 2010 at 10:15:00PM +0100, Bastian Blank wrote:
> On Mon, Mar 15, 2010 at 09:48:15PM +0800, Zhang, Xiantao wrote:
> > With my previous patch, seems you still need to apply the following patch 
> > to xen.git. In this way, the GSI 0-15 are still setup by hypervisor, but it 
> > also give one chance for dom0 to re-programme its polarity and trigger 
> > mode. 

Yeah, that won't do. This way there are no irq_desc set for the rest of
the devices.
> No, this seems to break further things. I lost access to the storage.

The mechanism this makes this work is a bit .. unwieldy. 

It really looks that we initially set the IOAPIC with the wrong trigger
earlier on (and Zhangs patch tries to remove that so it is on demand,
but it removes the rest of your GSI entries, so that is not good).

1) Can you boot your baremetal with these options:

 acpi.debug_level=0xffffffff  acpi.debug_layer=0x2 apic=debug 

2) And then later on your Xen with these (make SURE to _not_ have apic=debug on
the Linux kernel command line with Xen, it will blow):
  xen.gz  apic=debug apic_verbosity=debug  console_to_ring sync_console 
loglvl=all guest_loglvl=all

Also you could try this patch to confirm the theory that we incorrectly
get the trigger/level from the MP table early on boot (not compile
tested at all):

diff --git a/arch/x86/xen/pci.c b/arch/x86/xen/pci.c
index f5ce35f..b775452 100644
--- a/arch/x86/xen/pci.c
+++ b/arch/x86/xen/pci.c
@@ -88,6 +88,9 @@ void __init xen_setup_pirqs(void)
                if (acpi_get_override_irq(irq, &trigger, &polarity) == -1)
+               if (irq == 14 || irq == 5)
+                       trigger =  0;
                        trigger ? ACPI_LEVEL_SENSITIVE : ACPI_EDGE_SENSITIVE,
                        polarity ? ACPI_ACTIVE_LOW : ACPI_ACTIVE_HIGH);

Xen-devel mailing list

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