Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S261982AbVAYQ12 (ORCPT ); Tue, 25 Jan 2005 11:27:28 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S262004AbVAYQ11 (ORCPT ); Tue, 25 Jan 2005 11:27:27 -0500 Received: from fw.osdl.org ([65.172.181.6]:34796 "EHLO mail.osdl.org") by vger.kernel.org with ESMTP id S261982AbVAYQ1Y (ORCPT ); Tue, 25 Jan 2005 11:27:24 -0500 Date: Tue, 25 Jan 2005 08:27:15 -0800 (PST) From: Linus Torvalds To: Mike Waychison cc: Bill Davidsen , Greg KH , Jirka Kosina , Patrick Mochel , linux-kernel@vger.kernel.org Subject: Re: [PATCH] fix bad locking in drivers/base/driver.c In-Reply-To: <41F66F86.4000609@sun.com> Message-ID: References: <20050125055651.GA1987@kroah.com> <41F5F623.5090903@sun.com> <41F64E87.8040501@tmr.com> <41F66F86.4000609@sun.com> 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: 1068 Lines: 24 Hmm.. I certainly like the "use completions" patch, since it makes it a lot more obvious what is going on (and it is what completions were designed for). However, since it does change semantics very subtly: if you call "driver_unregister()" twice (which is wrong, but looking at the code it looks like it would just silently have worked), the old code would just ignore it. The new code will block on the second one. Now, I don't mind the blocking (it's a bug to call it twice, and blocking should even give a nice callback when you do the "show tasks" sysrq, so it's a good way to _find_ the bug), but together with Mike's comment about "Compile-tested only", I'd really like somebody (Greg?) to say "trying to doubly remove the driver is so illegal that we don't care, and btw, I tested it and it's all ok". 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/