Re: [PATCH 2/2] irqdomain: Support one-shot tear down of domain mappings.

From: Grant Likely
Date: Sun Jun 17 2012 - 23:46:29 EST


On Sat, 16 Jun 2012 07:34:03 +0900, Paul Mundt <lethal@xxxxxxxxxxxx> wrote:
> On Fri, Jun 15, 2012 at 12:35:18PM -0600, Grant Likely wrote:
> > On Wed, 13 Jun 2012 16:34:01 +0900, Paul Mundt <lethal@xxxxxxxxxxxx> wrote:
> > > +/**
> > > + * irq_domain_dispose_mappings() - Dispose of all mappings in a domain
> > > + * @domain: domain to tear down
> > > + */
> > > +void irq_domain_dispose_mappings(struct irq_domain *domain)
> > > +{
> > > + if (domain->revmap_type == IRQ_DOMAIN_MAP_NOMAP)
> > > + return;
> > > +
> > > + if (domain->linear_size) {
> > > + int i;
> > > +
> > > + for (i = 0; i < domain->linear_size; i++)
> > > + irq_dispose_mapping(domain->linear_revmap[i]);
> > > + } else {
> >
> > The 'else' should be dropped I think. With the merge of linear and
> > tree mappings into the same domain type, it is possible for a domain
> > to have both linear and tree mappings in the same instance. So tree
> > needs to be cleared even if linear_size is non-zero.
> >
> Ok, that's fine. Though by that same logic wouldn't it also be possible
> for a domain to have multiple linear ranges?

except that there is only one linear map. It would be possible to
have multiple maps, but I'm going to resist adding a whole lot of
options for reverse mapping to keep the lookup overhead low. A
sufficiently large linear map would also handle multiple linear maps.

g.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/