From: Frederik Deweerdt The following patch silences the following compile time warning introduced by the disable-init-initramfsc-updated patch: CC init/noinitramfs.o init/noinitramfs.c:42: warning : initialization from incompatible pointer type In addition, I've cleaned up the headers and added some error handling. Signed-off-by: Frederik Deweerdt Cc: Jean-Paul Saman Signed-off-by: Andrew Morton --- init/noinitramfs.c | 38 ++++++++++++++++++++++++-------------- 1 files changed, 24 insertions(+), 14 deletions(-) diff -puN init/noinitramfs.c~disable-init-initramfsc-updated-fix init/noinitramfs.c --- a/init/noinitramfs.c~disable-init-initramfsc-updated-fix +++ a/init/noinitramfs.c @@ -18,25 +18,35 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include -#include -#include -#include -#include -#include -#include +#include +#include #include /* * Create a simple rootfs that is similar to the default initramfs */ -static void __init default_rootfs(void) +static int __init default_rootfs(void) { - int mkdir_err = sys_mkdir("/dev", 0755); - int err = sys_mknod((const char __user *) "/dev/console", - S_IFCHR | S_IRUSR | S_IWUSR, - new_encode_dev(MKDEV(5, 1))); - if (err == -EROFS) - printk("Warning: Failed to create a rootfs\n"); - mkdir_err = sys_mkdir("/root", 0700); + int err; + + err = sys_mkdir("/dev", 0755); + if (err < 0) + goto out; + + err = sys_mknod((const char __user *) "/dev/console", + S_IFCHR | S_IRUSR | S_IWUSR, + new_encode_dev(MKDEV(5, 1))); + if (err < 0) + goto out; + + err = sys_mkdir("/root", 0700); + if (err < 0) + goto out; + + return 0; + +out: + printk(KERN_WARNING "Failed to create a rootfs\n"); + return err; } rootfs_initcall(default_rootfs); _