[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] xen 4 only seeing one keyboard and mouse



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))
            continue;
        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
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.