* we run out of pre-allocate ones, allocate more
*/
printk(KERN_DEBUG "try to get more irq_desc %d\n", nr_irq_desc);
+ {
+ /* double check if some one mess up the list */
+ struct irq_desc *desc;
+ int count = 0;
+
+ desc = &sparse_irqs[0];
+ while (desc) {
+ printk(KERN_DEBUG "found irq_desc for irq %d\n", desc->irq);
+ if (desc->next)
+ printk(KERN_DEBUG "found irq_desc for irq %d and next will be irq %d\n", desc->irq, desc->next->irq);
+ desc = desc->next;
+ count++;
+ }
+ printk(KERN_DEBUG "all preallocted %d\n", count);
+ }
total_bytes = sizeof(struct irq_desc) * nr_irq_desc;
if (after_bootmem)
desc->irq = irq;
desc_pri->next = desc;
+ {
+ /* double check if some one mess up the list */
+ struct irq_desc *desc;
+ int count = 0;
+
+ desc = &sparse_irqs[0];
+ while (desc) {
+ printk(KERN_DEBUG "1 found irq_desc for irq %d\n", desc->irq);
+ if (desc->next)
+ printk(KERN_DEBUG "1 found irq_desc for irq %d and next will be irq %d\n", desc->irq, desc->next->irq);
+ desc = desc->next;
+ count++;
+ }
+ printk(KERN_DEBUG "1 all preallocted %d\n", count);
+ }
return desc;
}