Re: [PATCH 1/2] genirq: Generic chip: add irq_unmap_generic_chip

From: Thomas Gleixner
Date: Fri Sep 02 2016 - 11:16:02 EST


On Mon, 1 Aug 2016, Sebastian Frias wrote:
> NOTE: While the proposed unmap() function attempts to undo as much things
> as done by the map() function, I did not find a way to undo the following:
>
> a) irq_gc_init_mask_cache(gc, dgc->gc_flags)

You can't undo that. Because that represents the mask cache of the irq chip
and that is required to be consistent over the life time of the irq
chip.

Unmapping does not make the generic chip and the underlying irqchip go
away.

> b) irq_set_lockdep_class(virq, &irq_nested_lock_class)

No point in undoing that. The irq descriptor is released on unmap.

> c) irq_modify_status(virq, dgc->irq_flags_to_clear, dgc->irq_flags_to_set)

See b)

Thanks,

tglx