[TRIVIAL] Error checks omitted in init_tmpfs() in mm/tiny-shmem.c

Hareesh Nagarajan
2005-10-24T05:29:49Z

[-- Attachment #1: Type: text/plain, Size: 229 bytes --]

The existing code in init_tmpfs() in mm/tiny-shmem.c does not handle the
cases when the calls to register_filesystem() and kern_mount() fail.
This patch adds those checks.

Signed-off-by: Hareesh Nagarajan <hnagar2@gmail.com>

[-- Attachment #2: tiny-shmmem-fix.patch --]
[-- Type: text/x-patch, Size: 623 bytes --]

--- linux-2.6.13.4/mm/tiny-shmem.c 2005-10-10 13:54:29.000000000 -0500
+++ linux-2.6.13.4-edit/mm/tiny-shmem.c 2005-10-24 00:13:10.532652000 -0500
@@ -31,12 +31,27 @@

static int __init init_tmpfs(void)
{
- register_filesystem(&tmpfs_fs_type);
+ int error;
+
+ error = register_filesystem(&tmpfs_fs_type);
+ if (error) {
+ goto out2;
+ }
+
#ifdef CONFIG_TMPFS
devfs_mk_dir("shm");
#endif
shm_mnt = kern_mount(&tmpfs_fs_type);
+ if (IS_ERR(shm_mnt)) {
+ error = PTR_ERR(shm_mnt);
+ goto out1;
+ }
+
return 0;
+out1:
+ unregister_filesystem(&tmpfs_fs_type);
+out2:
+ return error;
}
module_init(init_tmpfs)