Comments
Patch
@@ -6143,6 +6143,7 @@ static int niu_request_irq(struct niu *np)
for (i = 0; i < np->num_ldg; i++) {
struct niu_ldg *lp = &np->ldg[i];
+ netdev_reserve_cpu(netdev_map_to_cpu(lp->irq));
err = request_irq(lp->irq, niu_interrupt,
IRQF_SHARED | IRQF_SAMPLE_RANDOM,
np->irq_name[i], lp);
@@ -6158,6 +6159,7 @@ out_free_irqs:
struct niu_ldg *lp = &np->ldg[j];
free_irq(lp->irq, lp);
+ netdev_release_cpu(netdev_map_to_cpu(lp->irq));
}
return err;
}
@@ -6170,6 +6172,7 @@ static void niu_free_irq(struct niu *np)
struct niu_ldg *lp = &np->ldg[i];
free_irq(lp->irq, lp);
+ netdev_release_cpu(netdev_map_to_cpu(lp->irq));
}
}