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: Jan Beulich <JBeulich@xxxxxxxxxx>
Subject: Re: [Xen-devel] pvops-2.6.32 - Interrupt routing problem
From: Bastian Blank <waldi@xxxxxxxxxx>
Date: Tue, 23 Mar 2010 13:37:56 +0100
Cc: Jeremy Fitzhardinge <jeremy@xxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>, Xiantao Zhang <xiantao.zhang@xxxxxxxxx>, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Delivery-date: Tue, 23 Mar 2010 05:38:42 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4BA8B62402000078000366E8@xxxxxxxxxxxxxxxxxx>
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: <EB8593BCECAB3D40A8248BE0B6400A38464AE52E@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <20100315211459.GA9314@xxxxxxxxxxxxxxxxxxxxxxx> <20100316013114.GD7622@xxxxxxxxxxxxxxxxxxx> <20100316081832.GA20502@xxxxxxxxxxxxxxxxxxxxxxx> <20100316153216.GB28821@xxxxxxxxxxxxxxxxxxx> <20100316182053.GA2258@xxxxxxxxxxxxxxxxxxxxxxx> <20100319113904.GA29200@xxxxxxxxxxxxxxxxxxxxxxx> <20100319121341.GA30270@xxxxxxxxxxxxxxxxxxxxxxx> <20100321214723.GA29738@xxxxxxxxxxxxxxxxxxxxxxx> <4BA8B62402000078000366E8@xxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.18 (2008-05-17)
On Tue, Mar 23, 2010 at 11:37:56AM +0000, Jan Beulich wrote:
> >>> Bastian Blank <waldi@xxxxxxxxxx> 21.03.10 22:47 >>>
> >Okay, I think I found another problem. Currently the setup looks like
> >this:
> >- PHYSDEVOP_setup_gsi: set trigger and polarity, unmask pin
> Where are you seeing this? Other than Linux' (unmasking edge
> triggered IRQs), Xen's io_apic_set_pci_routing() always masks the
> entry afaics.

In the Linux kernel, xen_register_gsi (arch/x86/xen/pci.c). The io-apic
support in Xen is a copy of the Linux code and behaves similar.

> >- PHYSDEVOP_map_pirq: map to pirq, set irq handler to guest
> >If an interrupt fires between this two calles, what happens?
> Since this is only for edge triggered IRQs, I believe the purpose is
> to not lose an edge when first enabling the interrupt.

No. The interrupt setup is always done before the device setup. This is
core kernel functionality.

Please explain why you think this is restricted to edge triggered. This
is called from the PCI interrupt setup, and usualy used with level
triggered interrupts.


I have never understood the female capacity to avoid a direct answer to
any question.
                -- Spock, "This Side of Paradise", stardate 3417.3

Xen-devel mailing list