OK, I give up.  Kill all the might_sleep warnings from the early boot
process.



 kernel/sched.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

diff -puN kernel/sched.c~might_sleep-early-bogons kernel/sched.c
--- 25/kernel/sched.c~might_sleep-early-bogons	2003-10-18 18:28:15.000000000 -0700
+++ 25-akpm/kernel/sched.c	2003-10-18 18:58:16.000000000 -0700
@@ -2855,7 +2855,7 @@ void __might_sleep(char *file, int line)
 #if defined(in_atomic)
 	static unsigned long prev_jiffy;	/* ratelimiting */
 
-	if (in_atomic() || irqs_disabled()) {
+	if ((in_atomic() || irqs_disabled()) && system_running) {
 		if (time_before(jiffies, prev_jiffy + HZ) && prev_jiffy)
 			return;
 		prev_jiffy = jiffies;

_