Skip to content

Commit

Permalink
init: DEBUG_BLOCK_EXT_DEVT requires explicit root= param
Browse files Browse the repository at this point in the history
DEBUG_BLOCK_EXT_DEVT shuffles SCSI and IDE device numbers and root
device number set using rdev become meaningless.  Root devices should
be explicitly specified using textual names.  Warn about it if root
can't be found and DEBUG_BLOCK_EXT_DEVT is enabled.  Also, add warning
to the help text.

Signed-off-by: Tejun Heo <[email protected]>
Cc: Bartlomiej Zolnierkiewicz <[email protected]>
Signed-off-by: Jens Axboe <[email protected]>
  • Loading branch information
htejun authored and Jens Axboe committed Oct 9, 2008
1 parent 2bbedcb commit 55dc7db
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 0 deletions.
4 changes: 4 additions & 0 deletions init/do_mounts.c
Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,10 @@ void __init mount_block_root(char *name, int flags)
printk("Please append a correct \"root=\" boot option; here are the available partitions:\n");

printk_all_partitions();
#ifdef CONFIG_DEBUG_BLOCK_EXT_DEVT
printk("DEBUG_BLOCK_EXT_DEVT is enabled, you need to specify "
"explicit textual name for \"root=\" boot option.\n");
#endif
panic("VFS: Unable to mount root fs on %s", b);
}

Expand Down
6 changes: 6 additions & 0 deletions lib/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -638,6 +638,12 @@ config DEBUG_BLOCK_EXT_DEVT
userland code paths which assume predetermined contiguous
device number allocation.

Note that turning on this debug option shuffles all the
device numbers for all IDE and SCSI devices including libata
ones, so root partition specified using device number
directly (via rdev or root=MAJ:MIN) won't work anymore.
Textual device names (root=/dev/sdXn) will continue to work.

Say N if you are unsure.

config LKDTM
Expand Down

0 comments on commit 55dc7db

Please sign in to comment.