From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: Re: [Ksummit-2010-discuss] [v2] Remaining BKL users, what to do Date: Tue, 19 Oct 2010 09:26:54 +0200 Message-ID: <201010190926.54635.arnd@arndb.de> References: <201009161632.59210.arnd@arndb.de> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Content-Type: Text/Plain; charset="us-ascii" To: Dave Airlie Cc: Theodore Kilgore , Steven Rostedt , Greg KH , codalist@telemann.coda.cs.cmu.edu, autofs@linux.kernel.org, Samuel Ortiz , Jan Kara , Mikulas Patocka , Jan Harkes , netdev@vger.kernel.org, Anders Larsen , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Bryan Schumaker , Christoph Hellwig , ksummit-2010-discuss@lists.linux-foundation.org, Petr Vandrovec , Arnaldo Carvalho de Melo , linux-fsdevel@vger.kernel.org, Evgeniy Dushistov , Ingo Molnar , Andrew Hendry , linux-media@vger.kernel.org On Tuesday 19 October 2010 06:52:32 Dave Airlie wrote: > > I might be able to find some hardware still lying around here that uses an > > i810. Not sure unless I go hunting it. But I get the impression that if > > the kernel is a single-CPU kernel there is not any problem anyway? Don't > > distros offer a non-smp kernel as an installation option in case the user > > needs it? So in reality how big a problem is this? > > Not anymore, which is my old point of making a fuss. Nowadays in the > modern distro world, we supply a single kernel that can at runtime > decide if its running on SMP or UP and rewrite the text section > appropriately with locks etc. Its like magic, and something like > marking drivers as BROKEN_ON_SMP at compile time is really wrong when > what you want now is a runtime warning if someone tries to hotplug a > CPU with a known iffy driver loaded or if someone tries to load the > driver when we are already in SMP mode. We could make the driver run-time non-SMP by adding if (num_present_cpus() > 1) { pr_err("i810 no longer supports SMP\n"); return -EINVAL; } to the init function. That would cover the vast majority of the users of i810 hardware, I guess. Arnd