Allright, another one Grant: unsigned int irq_find_mapping(struct irq_domain *domain, irq_hw_number_t hwirq) { struct irq_data *data;
/* Look for default domain if nececssary */ if (domain == NULL) domain = irq_default_domain; if (domain == NULL) return 0; switch (domain->revmap_type) { case IRQ_DOMAIN_MAP_LEGACY: return irq_domain_legacy_revmap(domain, hwirq); case IRQ_DOMAIN_MAP_LINEAR: return irq_linear_revmap(domain, hwirq); case IRQ_DOMAIN_MAP_TREE: rcu_read_lock(); data = radix_tree_lookup(&domain->revmap_data.tree, hwirq); rcu_read_unlock(); if (data) return data->irq; - break; + return 0; case IRQ_DOMAIN_MAP_NOMAP: Please, stick a proper commit message and my s-o-b and see if you can fix your tree before you ask Linus to pull because that's not pretty on any pseries .... irq_find_mapping() does get called for all interrupt the first time it's mapped to check if there's a pre-existing mapping, so the case of the thing being unpopulated is absolutely legit. the NOMAP case has a similar dubious exit case but since I'm not that familiar with NOMAP I haven't touched it. Cheers, Ben. _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev