Commit 952d9de1 authored by Borislav Petkov's avatar Borislav Petkov Committed by Linus Torvalds

ext3: fix error handling in ext3_create_journal()

Fix error handling in ext3_create_journal according to kernel conventions.
Signed-off-by: default avatarBorislav Petkov <bbpetkov@yahoo.de>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 1f1f642e
...@@ -2084,6 +2084,7 @@ static int ext3_create_journal(struct super_block * sb, ...@@ -2084,6 +2084,7 @@ static int ext3_create_journal(struct super_block * sb,
unsigned int journal_inum) unsigned int journal_inum)
{ {
journal_t *journal; journal_t *journal;
int err;
if (sb->s_flags & MS_RDONLY) { if (sb->s_flags & MS_RDONLY) {
printk(KERN_ERR "EXT3-fs: readonly filesystem when trying to " printk(KERN_ERR "EXT3-fs: readonly filesystem when trying to "
...@@ -2091,13 +2092,15 @@ static int ext3_create_journal(struct super_block * sb, ...@@ -2091,13 +2092,15 @@ static int ext3_create_journal(struct super_block * sb,
return -EROFS; return -EROFS;
} }
if (!(journal = ext3_get_journal(sb, journal_inum))) journal = ext3_get_journal(sb, journal_inum);
if (!journal)
return -EINVAL; return -EINVAL;
printk(KERN_INFO "EXT3-fs: creating new journal on inode %u\n", printk(KERN_INFO "EXT3-fs: creating new journal on inode %u\n",
journal_inum); journal_inum);
if (journal_create(journal)) { err = journal_create(journal);
if (err) {
printk(KERN_ERR "EXT3-fs: error creating journal.\n"); printk(KERN_ERR "EXT3-fs: error creating journal.\n");
journal_destroy(journal); journal_destroy(journal);
return -EIO; return -EIO;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment