Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751083AbWLMV0k (ORCPT ); Wed, 13 Dec 2006 16:26:40 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751125AbWLMV0k (ORCPT ); Wed, 13 Dec 2006 16:26:40 -0500 Received: from smtp.osdl.org ([65.172.181.25]:43832 "EHLO smtp.osdl.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751083AbWLMV0j (ORCPT ); Wed, 13 Dec 2006 16:26:39 -0500 Date: Wed, 13 Dec 2006 13:26:33 -0800 (PST) From: Linus Torvalds To: Benjamin Herrenschmidt cc: Greg KH , Andrew Morton , linux-kernel@vger.kernel.org Subject: Re: [GIT PATCH] more Driver core patches for 2.6.19 In-Reply-To: <1166044471.11914.195.camel@localhost.localdomain> Message-ID: References: <20061213195226.GA6736@kroah.com> <1166044471.11914.195.camel@localhost.localdomain> 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: 1378 Lines: 39 On Thu, 14 Dec 2006, Benjamin Herrenschmidt wrote: > > Actually, you can... but wether you want is a different story :-) > > You can simply mask it, have it handled by userspace and re-enable it > when that's done. Nope. Again, this whole mentality is WRONG. It DOES NOT WORK. No architecture does per-device interrupts portably, which means that you'll always see sharing. And once you see sharing, you have small "details" like the harddisk interrupt or network interrupt that the user-land driver will depend on. Oops. Instant deadlock. > I don't mean I -like- the approach... I just say it can be made to > sort-of work. But I don't see the point. No. The point really is that it fundamentally _cannot_ work. Not in the real world. It can only work in some alternate reality where you can always disable interrupts per-device, and even in that alternate reality it would be wrong to use that quoted interrupt handler: not only do you need to disable the irq, you need to have an "acknowledge" phase too So you'd actually have to fix things _architecturally_, not just add some code to the irq handler. Linus - 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/