Messages in this thread | | | Date | Tue, 29 Jul 2008 23:12:11 +0200 | From | Rene Herman <> | Subject | Re: [patch 5/3] fastboot: sync the async execution before late_initcall and move level 6s (sync) first |
| |
On 29-07-08 23:04, Arjan van de Ven wrote:
> On Tue, 29 Jul 2008 23:00:29 +0200 >> Isn't this a bit confusing? All the other sync levels are directly >> after their respective levels. I can see why you want another level >> now, but shouldn't that mean late_initcall now wants to be 8, >> device_initcall 7 and your new 6s just 6 (device_core_initcall or >> something...)? >> > > yeah it is.. but nobody is using them > > I'll make a note to clean this up > > (by removing the unused ones)
Fair enough. By the way:
> @@ -775,6 +776,11 @@ static void __init do_initcalls(void) > } > if (phase == 1 && call >= __async_initcall_end) > phase = 2; > + if (phase == 2 && call >= __device_initcall_end) { > + phase = 3; > + /* make sure all async work is done before level 7 */ > + flush_workqueue(async_init_wq); > + } > if (phase != 1) > do_one_initcall(*call);
After this patch, there are now 2 flush_workqueue(async_init_wq) calls in do_initcalls. Should the other one remain as well?
Rene.
| |