public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Possible to delay boot process to boot from USB subsystem?
@ 2004-05-02 23:27 Bill Catlan
  2004-05-03  1:27 ` Randy.Dunlap
  2004-05-03  5:34 ` Willy Tarreau
  0 siblings, 2 replies; 11+ messages in thread
From: Bill Catlan @ 2004-05-02 23:27 UTC (permalink / raw)
  To: linux-kernel

Hello,

The below message appeared on linux-kernel in June 2002.  The patch allows
booting from a USB harddrive and was designed for the 2.4.14-pre8-ext3 kernel,
but I was able to manually apply it to a Debian 2.4.18 kernel.

I am now trying to upgrade to a 2.4.26 kernel, and I am unable to create the
same "boot from floppy with rootfs on a USB drive" scenario that I created with
the modified 2.4.18 kernel.  I believe my current issue with the 2.4.26 kernel
is the same race condition as on the 2.4.18 kernel since I get the "Initializing
USB Mass Storage driver..." notice, but then i get "Kernel panic: No init found.
Try passing init= option to kernel."  Given time, I suspect that the USB storage
subsystem would come online and the kernel would be able to mount the rootfs on
it.

fs/super.c has change dramatically and the below patch now seems obsolete.

Is there a similar patch for newer kernels - or any other way to cause the boot
process to pause between loading the kernel and modules and running /sbin/init?

TIA.

Bill

On Sun, Jun 02, 2002 at 10:13:22PM +0200, Paul Stoeber wrote:
> It simply sleeps 10 seconds before mount_block_root().
>
> I get an 'Unable to mount root' panic if I don't apply it,
> because the attached device rolls in too late.

A while ago I made the patch below. I retries every second until the root
device appears. Advantages:
- no delay when the device is already there
- it also works if it takes longer than 10s to find the harddisk
  (for example, if you plug it in later)

I don't know if it applies cleanly to current kernels.

Eric

--- linux-2.4.14-pre8-ext3/fs/super.c.orig	Fri Nov 16 00:59:18 2001
+++ linux-2.4.14-pre8-ext3/fs/super.c	Fri Nov 16 01:07:26 2001
@@ -1009,11 +1009,13 @@
 		 * Allow the user to distinguish between failed open
 		 * and bad superblock on root device.
 		 */
-		printk ("VFS: Cannot open root device \"%s\" or %s\n",
+		printk ("VFS: Cannot open root device \"%s\" or %s, retrying in 1s.\n",
 			root_device_name, kdevname (ROOT_DEV));
-		printk ("Please append a correct \"root=\" boot option\n");
-		panic("VFS: Unable to mount root fs on %s",
-			kdevname(ROOT_DEV));
+
+		/* wait 1 second and try again */
+		current->state = TASK_INTERRUPTIBLE;
+		schedule_timeout(HZ);
+		goto retry;
 	}

 	check_disk_change(ROOT_DEV);
-


^ permalink raw reply	[flat|nested] 11+ messages in thread
* Re: Possible to delay boot process to boot from USB subsystem?
@ 2004-05-04  2:32 Randy.Dunlap
  2004-05-04  4:51 ` Willy Tarreau
  0 siblings, 1 reply; 11+ messages in thread
From: Randy.Dunlap @ 2004-05-04  2:32 UTC (permalink / raw)
  To: wcatlan, willy; +Cc: lkml


Bill,

(replying to:  http://lkml.org/lkml/2004/5/3/124,
I don't have mailbox access to your email ATM)


I wish that I had a way to test this patch.
Apparently Willy does, so I recommend his patch.... :)
with one change:

change
+static int setuptime;	/* time(ms) to let devices set up before root mount */

to
+static int setuptime = 10000;	/* time(ms) to let devices set up before root mount */


or 60000 (= 1 minute).  Whatever is comfortable for you.

Willy, it seems that some default value would be good there.

Later,
--
~Randy

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2004-05-05 14:18 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-02 23:27 Possible to delay boot process to boot from USB subsystem? Bill Catlan
2004-05-03  1:27 ` Randy.Dunlap
2004-05-03  5:17   ` Bill Catlan
2004-05-03 20:31   ` Bill Catlan
2004-05-04 18:53     ` Paulo Marques
2004-05-05 14:18       ` Bill Catlan
2004-05-03  5:34 ` Willy Tarreau
2004-05-03 20:44   ` Bill Catlan
2004-05-03 21:05     ` Willy TARREAU
  -- strict thread matches above, loose matches on Subject: below --
2004-05-04  2:32 Randy.Dunlap
2004-05-04  4:51 ` Willy Tarreau

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox