lkml.org 
[lkml]   [2009]   [Mar]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] irq: mask irq before move it

    Imapct: fix panic

    try to mask the irq, before move the irq desc

    Signed-off-by: Yinghai Lu <yinghai@kernel.org>

    ---
    kernel/irq/numa_migrate.c | 8 ++++++--
    1 file changed, 6 insertions(+), 2 deletions(-)

    Index: linux-2.6/kernel/irq/numa_migrate.c
    ===================================================================
    --- linux-2.6.orig/kernel/irq/numa_migrate.c
    +++ linux-2.6/kernel/irq/numa_migrate.c
    @@ -112,17 +112,21 @@ struct irq_desc *move_irq_desc(struct ir
    {
    int old_cpu;
    int node, old_node;
    + unsigned int irq = desc->irq;

    /* those all static, do move them */
    - if (desc->irq < NR_IRQS_LEGACY)
    + if (irq < NR_IRQS_LEGACY)
    return desc;

    old_cpu = desc->cpu;
    if (old_cpu != cpu) {
    node = cpu_to_node(cpu);
    old_node = cpu_to_node(old_cpu);
    - if (old_node != node)
    + if (old_node != node) {
    + desc->chip->mask(irq);
    desc = __real_move_irq_desc(desc, cpu);
    + desc->chip->unmask(irq);
    + }
    else
    desc->cpu = cpu;
    }

    \
     
     \ /
      Last update: 2009-03-28 05:47    [W:0.021 / U:3.128 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site