Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965577AbXBFWR5 (ORCPT ); Tue, 6 Feb 2007 17:17:57 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S965541AbXBFWR5 (ORCPT ); Tue, 6 Feb 2007 17:17:57 -0500 Received: from ebiederm.dsl.xmission.com ([166.70.28.69]:49658 "EHLO ebiederm.dsl.xmission.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965577AbXBFWRz (ORCPT ); Tue, 6 Feb 2007 17:17:55 -0500 From: ebiederm@xmission.com (Eric W. Biederman) To: Ingo Molnar Cc: Andrew Morton , linux-kernel@vger.kernel.org, "Lu, Yinghai" , Luigi Genoni , Natalie Protasevich , Andi Kleen Subject: Re: [PATCH 2/2] x86_64 irq: Handle irqs pending in IRR during irq migration. References: <200701221116.13154.luigi.genoni@pirelli.com> <200702021848.55921.luigi.genoni@pirelli.com> <200702021905.39922.luigi.genoni@pirelli.com> <20070206073616.GA15016@elte.hu> Date: Tue, 06 Feb 2007 15:16:53 -0700 In-Reply-To: <20070206073616.GA15016@elte.hu> (Ingo Molnar's message of "Tue, 6 Feb 2007 08:36:16 +0100") Message-ID: User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1151 Lines: 29 Ingo would it be reasonable to get a wait queue so I can wait for an irq that needs the delayed disable action to actually become masked? There are a lot of practical reasons while I cannot reprogram an unmasked irq. However if we can wait it should be able to get all of the convoluted irq migration logic out of interrupt context, and into process context. If know interrupts have been enabled on the cpus where an irq could be delivered after the irq has been masked, I know that the irq is not currently in progress. Therefore I know the irq will not be in progress again until the irq is unmasked. Once I know the irq will not be received again it is safe to modify the irq handling data structures and the interrupt controller. I think the only generic piece missing from this equation is a wait queue so I can wait for the irq to become masked. Say a generic sleeping masq_irq() call? Eric - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/