lkml.org 
[lkml]   [2008]   [Jul]   [18]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [patch 1/3] fastboot: Create a "asynchronous" initlevel
FromDaniel Walker <>
DateFri, 18 Jul 2008 18:22:20 -0700
On Fri, 2008-07-18 at 15:16 -0700, Arjan van de Ven wrote:
> +static void __init do_initcalls(void)
> +{
> +       initcall_t *call;
> +       static DECLARE_WORK(async_work, do_async_initcalls);
> +       int phase = 0; /* 0 = levels 0 - 6, 1 = level 6a, 2 = after
> level 6a */
> +
> +       async_init_wq = create_singlethread_workqueue("kasyncinit");
> +

Could you spawning one thread per cpu, and queuing the work evenly?
Maybe that's what your work towards. The "6a" level might be pretty
short, but there are some other levels that can get pretty large with
calls that would benefit from this.. There are a lot of calls that
already spawn threads too ..

Daniel



\
 
 \ /
  Last update: 2008-07-19 03:25    [from the cache]
©2003-2008