init/do_mounts.c: add create_dev() failure log
authorVishnu Pratap Singh <vishnu.ps@samsung.com>
Thu, 25 Jun 2015 22:03:37 +0000 (15:03 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 26 Jun 2015 00:00:42 +0000 (17:00 -0700)
If create_dev() function fails to create the root mount device
(/dev/root), then it goes to panic as root device not found but there is
no printk in this case.  So I have added the log in case it fails to
create the root device.  It will help in debugging.

[akpm@linux-foundation.org: simplify printk(), use pr_emerg(), display errno]
Signed-off-by: Vishnu Pratap Singh <vishnu.ps@samsung.com>
Acked-by: Pavel Machek <pavel@ucw.cz>
Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
Cc: Mike Snitzer <snitzer@redhat.com>
Cc: Dan Ehrenberg <dehrenberg@chromium.org>
Cc: Miklos Szeredi <mszeredi@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
init/do_mounts.c

index a95bbdb2a50232224eb64c5331123701ea7c2416..dea5de95c2dd23771f44e58ada2d9b1dbfa1c5df 100644 (file)
@@ -533,8 +533,13 @@ void __init mount_root(void)
        }
 #endif
 #ifdef CONFIG_BLOCK
-       create_dev("/dev/root", ROOT_DEV);
-       mount_block_root("/dev/root", root_mountflags);
+       {
+               int err = create_dev("/dev/root", ROOT_DEV);
+
+               if (err < 0)
+                       pr_emerg("Failed to create /dev/root: %d\n", err);
+               mount_block_root("/dev/root", root_mountflags);
+       }
 #endif
 }