Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753178AbYJYW5X (ORCPT ); Sat, 25 Oct 2008 18:57:23 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751450AbYJYW5D (ORCPT ); Sat, 25 Oct 2008 18:57:03 -0400 Received: from smtp1.linux-foundation.org ([140.211.169.13]:54449 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751419AbYJYW5B (ORCPT ); Sat, 25 Oct 2008 18:57:01 -0400 Date: Sat, 25 Oct 2008 15:56:38 -0700 (PDT) From: Linus Torvalds To: Rusty Russell cc: linux-kernel@vger.kernel.org, Ingo Molnar , Andi Kleen , Heiko Carstens , Greg Kroah-Hartman , Arjan van de Ven , Hugh Dickins , walt Subject: Re: [PULL] module, param and stop_machine patches In-Reply-To: Message-ID: References: <200810221005.59874.rusty@rustcorp.com.au> <200810260924.09479.rusty@rustcorp.com.au> User-Agent: Alpine 2.00 (LFD 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1476 Lines: 52 On Sat, 25 Oct 2008, Linus Torvalds wrote: > > Is there any reason why the real patch isn't just to make > 'stop_machine_init' a 'core_initcall()' instead of 'early_initcall()'? IOW, something like this (untested) Linus --- init/main.c | 3 +-- kernel/stop_machine.c | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/init/main.c b/init/main.c index 130d1a0..7e117a2 100644 --- a/init/main.c +++ b/init/main.c @@ -768,6 +768,7 @@ static void __init do_initcalls(void) static void __init do_basic_setup(void) { rcu_init_sched(); /* needed by module_init stage. */ + init_workqueues(); usermodehelper_init(); driver_init(); init_irq_proc(); @@ -851,8 +852,6 @@ static int __init kernel_init(void * unused) cad_pid = task_pid(current); - init_workqueues(); - smp_prepare_cpus(setup_max_cpus); do_pre_smp_initcalls(); diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c index 8aff79d..9bc4c00 100644 --- a/kernel/stop_machine.c +++ b/kernel/stop_machine.c @@ -160,4 +160,4 @@ static int __init stop_machine_init(void) stop_machine_work = alloc_percpu(struct work_struct); return 0; } -early_initcall(stop_machine_init); +core_initcall(stop_machine_init); -- 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/