From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Zijlstra Subject: Re: [RFC][PATCH] irq: remove IRQF_DISABLED Date: Mon, 02 Mar 2009 19:07:28 +0100 Message-ID: <1236017249.5330.1011.camel@laptop> References: <1235996477.5330.174.camel@laptop> <200903021855.02765.bzolnier@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Return-path: Received: from casper.infradead.org ([85.118.1.10]:46362 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750904AbZCBSHk (ORCPT ); Mon, 2 Mar 2009 13:07:40 -0500 In-Reply-To: <200903021855.02765.bzolnier@gmail.com> Sender: linux-arch-owner@vger.kernel.org List-ID: To: Bartlomiej Zolnierkiewicz Cc: Linus Torvalds , Ingo Molnar , Thomas Gleixner , lkml , linux-arch , Andrew Morton On Mon, 2009-03-02 at 18:55 +0100, Bartlomiej Zolnierkiewicz wrote: > > Could we make just the IDE driver itself enable interrupts? Sure. But that > > Actually it has been doing it for years (some host drivers don't do this by > default and still need "hdparm -u" or equivalent but I was planning to change > it for 2.6.30). What does it use to do that? A local_irq_enable() in hardirq context will make lockdep yell bloody murder :-). Then there is local_irq_enable_in_hardirq(), which plain simply lies when lockdep is enabled -- IOW it would generate horrid irq latencies. Not having to deal with IRQ recursion in lockdep helps.