The first problem that is addressed is that the addition of init_ext4_proc()
means that the code doesn't clean up after itself on a failure of
init_ext4_xattr(), and the second is that usually init_*_proc() should be
the last thing called, so we move it to the end and add the cleanup call to
exit_ext4_proc().
Signed-off-by: Mark Nelson <[EMAIL PROTECTED]>
---
fs/ext4/super.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
Index: ext4/fs/ext4/super.c
===================================================================
--- ext4.orig/fs/ext4/super.c
+++ ext4/fs/ext4/super.c
@@ -2999,10 +2999,6 @@ static int __init init_ext4_fs(void)
{
int err;
- err = init_ext4_proc();
- if (err)
- return err;
-
err = init_ext4_xattr();
if (err)
return err;
@@ -3012,7 +3008,12 @@ static int __init init_ext4_fs(void)
err = register_filesystem(&ext4dev_fs_type);
if (err)
goto out;
+ err = init_ext4_proc();
+ if (err)
+ goto out_proc;
return 0;
+out_proc:
+ exit_ext4_proc();
out:
destroy_inodecache();
out1:
--
-
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html