From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757148Ab3AaW4L (ORCPT ); Thu, 31 Jan 2013 17:56:11 -0500 Received: from mail-ve0-f171.google.com ([209.85.128.171]:64480 "EHLO mail-ve0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755931Ab3AaW4J (ORCPT ); Thu, 31 Jan 2013 17:56:09 -0500 MIME-Version: 1.0 In-Reply-To: References: <20130131120348.372374706@linutronix.de> <20130131122342.31b28664.akpm@linux-foundation.org> From: Linus Torvalds Date: Fri, 1 Feb 2013 09:55:48 +1100 X-Google-Sender-Auth: 57g56RPlB7OGkjxD2xOwCqj_ii0 Message-ID: Subject: Re: [patch 00/40] CPU hotplug rework - episode I To: Thomas Gleixner Cc: Andrew Morton , LKML , Ingo Molnar , Peter Zijlstra , Rusty Russell , Paul McKenney , "Srivatsa S. Bhat" , Arjan van de Veen , Paul Turner , Richard Weinberger , Magnus Damm Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Feb 1, 2013 at 9:44 AM, Thomas Gleixner wrote: > > Just face it. The current hotplug maze has 100+ states which are > completely undocumented. They are asymetric vs. startup and > teardown. They just exists and work somehow aside of the occasional > hard to decode hickup. > > Do you really want to preserve that state by all means [F*ck no]? No., But I also don't want to replace it with "there's now eleven documented states, and random people hook into random documented states". So for me it's the "expose these states" that I get worried about.. A random driver should not necessarily even be able to *see* this, and decide to be clever and take advantage of the ordering. So I'd hope there would be some visibility restrictions. We currently have drivers already being confused by DOWN_PREPARE vs DOWN_FAILED etc etc random state transitions, and giving them even more flexibility to pick random states sounds like a really bad idea. I'd like to make sure that drivers and filesystems etc do not even *see* the states that are meant for the scheduler or workqueues, for example). So 11 states (although some of those seem to have lots of substates, so there may be many more) is too many to *expose*. It's not necessarily too many to "have and document", if you see the difference. Linus