From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754269AbcIBPP7 (ORCPT ); Fri, 2 Sep 2016 11:15:59 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:54425 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754105AbcIBPPz (ORCPT ); Fri, 2 Sep 2016 11:15:55 -0400 Date: Fri, 2 Sep 2016 17:12:44 +0200 (CEST) From: Thomas Gleixner To: Sebastian Frias cc: Marc Zyngier , Jason Cooper , LKML , Mason Subject: Re: [PATCH 1/2] genirq: Generic chip: add irq_unmap_generic_chip In-Reply-To: <579F5C5A.2070507@laposte.net> Message-ID: References: <579F5C5A.2070507@laposte.net> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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