Re: [patch 5/3] fastboot: sync the async execution before late_initcalland move level 6s (sync) first

From: Simon Arlott
Date: Thu Jul 31 2008 - 18:14:29 EST


On 31/07/08 22:56, Greg KH wrote:
On Thu, Jul 31, 2008 at 07:29:21PM +0100, Simon Arlott wrote:
There is nothing else to run between 1-2 and 3, so there is no opportunity
to initialise devices in the background and usblp_init blocks for a while.
If it were a module then it would block in a separate thread and wouldn't hold up the main init process.

Right, but I want to compile all of this into the kernel.

Why? It sounds like a trivial solution for you is to actually use
modules. Why go through a lot of extra work to solve something in a
different way that is already solved for you?

Because it looks like doing HCD init early enough is a simple way to speed up boot time if there are any compiled-in usb device drivers, without running the HCD init itself from a separate thread.

Arjan, are you able to test this?
I'll try doing what I've suggested later tonight if I have time.

Who is imposing the "no modules allowed" rule on you, and why was it
made?

No one is imposing anything on me. I don't yet have an USB keyboard so I could compile all the drivers as modules without any problems.

There's some strange animosity to compiling things that one knows will always be needed into the kernel... like the V4L DVB code that used to fail to work properly, perhaps because everyone uses modules (4abdcf933f647763592db6bef001d1fae61a5527).

It also leads to people unloading/loading the module to workaround bugs that could otherwise be fixed (c278850206fd9df0bb62a72ca0b277fe20c5a452).

--
Simon Arlott
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/