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] xen 4 only seeing one keyboard and mouse

To: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Subject: Re: [Xen-devel] xen 4 only seeing one keyboard and mouse
From: M A Young <m.a.young@xxxxxxxxxxxx>
Date: Thu, 26 Aug 2010 23:15:49 +0100 (BST)
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 26 Aug 2010 15:17:07 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <alpine.LFD.2.00.1008262146440.7742@xxxxxxxxxxxxxxx>
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: <alpine.LFD.2.00.1008222048160.26824@xxxxxxxxxxxxxxx> <20100823151842.GB5955@xxxxxxxxxxxxxxxxxxx> <alpine.LFD.2.00.1008232030510.22588@xxxxxxxxxxxxxxx> <alpine.LFD.2.00.1008232127180.26050@xxxxxxxxxxxxxxx> <20100824171019.GA18015@xxxxxxxxxxxxxxxxxxx> <alpine.LFD.2.00.1008242126080.19009@xxxxxxxxxxxxxxx> <20100824211603.GA6502@xxxxxxxxxxxxxxxxxxx> <alpine.LFD.2.00.1008242334150.17347@xxxxxxxxxxxxxxx> <20100825142821.GB4394@xxxxxxxxxxxxxxxxxxx> <alpine.LFD.2.00.1008252230050.18644@xxxxxxxxxxxxxxx> <20100826140459.GD3792@xxxxxxxxxxxxxxxxxxx> <alpine.LFD.2.00.1008262146440.7742@xxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Alpine 2.00 (LFD 1167 2008-08-23)
On Thu, 26 Aug 2010, M A Young wrote:

Okay, here is my first attempt at dirty debugging. I have made a patch to try to track where vector_irq is being changed (attached) and have also attached. I have looked at it quickly, and I don't think some low IRQs are getting set on the second CPU.

My next thoughts on this are that almost all IRQs allocated on the first cpu before the second is started aren't initialized on the second CPU. I presume that __setup_vector_irq from xen/arch/x86/irq.c is where it is supposed to happen
void __setup_vector_irq(int cpu)
    int irq, vector;
    struct irq_cfg *cfg;

    /* Clear vector_irq */
    for (vector = 0; vector < NR_VECTORS; ++vector) {
        per_cpu(vector_irq, cpu)[vector] = -1;
printk("__setup_irq_vector: setting vector_irq[%d]=-1 for cpu=%d\n",
               vector, cpu);
    /* Mark the inuse vectors */
    for (irq = 0; irq < nr_irqs; ++irq) {
        cfg = irq_cfg(irq);
        if (!cpu_isset(cpu, cfg->domain))
        vector = irq_to_vector(irq);
        per_cpu(vector_irq, cpu)[vector] = irq;
printk("__setup_irq_vector2: setting vector_irq[%d]=%d for cpu=%d\n",
               vector, irq, cpu);
but my debugging suggests it is only actually happening for irq[240]

        Michael Young

Xen-devel mailing list