Commit 55dc7db70a73a3809a2334063c9b5b0d8ccebdaa

Authored by Tejun Heo
Committed by Jens Axboe
1 parent 2bbedcb4c1

init: DEBUG_BLOCK_EXT_DEVT requires explicit root= param

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 <tj@kernel.org>
Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>

Showing 2 changed files with 10 additions and 0 deletions Side-by-side Diff

... ... @@ -263,6 +263,10 @@
263 263 printk("Please append a correct \"root=\" boot option; here are the available partitions:\n");
264 264  
265 265 printk_all_partitions();
  266 +#ifdef CONFIG_DEBUG_BLOCK_EXT_DEVT
  267 + printk("DEBUG_BLOCK_EXT_DEVT is enabled, you need to specify "
  268 + "explicit textual name for \"root=\" boot option.\n");
  269 +#endif
266 270 panic("VFS: Unable to mount root fs on %s", b);
267 271 }
268 272  
... ... @@ -638,6 +638,12 @@
638 638 userland code paths which assume predetermined contiguous
639 639 device number allocation.
640 640  
  641 + Note that turning on this debug option shuffles all the
  642 + device numbers for all IDE and SCSI devices including libata
  643 + ones, so root partition specified using device number
  644 + directly (via rdev or root=MAJ:MIN) won't work anymore.
  645 + Textual device names (root=/dev/sdXn) will continue to work.
  646 +
641 647 Say N if you are unsure.
642 648  
643 649 config LKDTM