diff options
| author | Tao Ma <tao.ma@oracle.com> | 2009-11-10 04:13:22 -0500 |
|---|---|---|
| committer | Jan Kara <jack@suse.cz> | 2009-11-11 09:24:14 -0500 |
| commit | 7b02bec07efe1d6c7d48c786e0c1a38d28fe7245 (patch) | |
| tree | cb93e26c107052be83ba52a74652c44c3ba199da | |
| parent | fe8bc91c4c30122b357d197117705cfd4fabaf28 (diff) | |
JBD/JBD2: free j_wbuf if journal init fails.
If journal init fails, we need to free j_wbuf.
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Jan Kara <jack@suse.cz>
Signed-off-by: Tao Ma <tao.ma@oracle.com>
Signed-off-by: Jan Kara <jack@suse.cz>
| -rw-r--r-- | fs/jbd/journal.c | 2 | ||||
| -rw-r--r-- | fs/jbd2/journal.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/fs/jbd/journal.c b/fs/jbd/journal.c index bd3c073b485d..49d5cd6053c8 100644 --- a/fs/jbd/journal.c +++ b/fs/jbd/journal.c | |||
| @@ -756,6 +756,7 @@ journal_t * journal_init_dev(struct block_device *bdev, | |||
| 756 | 756 | ||
| 757 | return journal; | 757 | return journal; |
| 758 | out_err: | 758 | out_err: |
| 759 | kfree(journal->j_wbuf); | ||
| 759 | kfree(journal); | 760 | kfree(journal); |
| 760 | return NULL; | 761 | return NULL; |
| 761 | } | 762 | } |
| @@ -820,6 +821,7 @@ journal_t * journal_init_inode (struct inode *inode) | |||
| 820 | 821 | ||
| 821 | return journal; | 822 | return journal; |
| 822 | out_err: | 823 | out_err: |
| 824 | kfree(journal->j_wbuf); | ||
| 823 | kfree(journal); | 825 | kfree(journal); |
| 824 | return NULL; | 826 | return NULL; |
| 825 | } | 827 | } |
diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c index b0ab5219becb..fed85388ee86 100644 --- a/fs/jbd2/journal.c +++ b/fs/jbd2/journal.c | |||
| @@ -913,6 +913,7 @@ journal_t * jbd2_journal_init_dev(struct block_device *bdev, | |||
| 913 | 913 | ||
| 914 | return journal; | 914 | return journal; |
| 915 | out_err: | 915 | out_err: |
| 916 | kfree(journal->j_wbuf); | ||
| 916 | jbd2_stats_proc_exit(journal); | 917 | jbd2_stats_proc_exit(journal); |
| 917 | kfree(journal); | 918 | kfree(journal); |
| 918 | return NULL; | 919 | return NULL; |
| @@ -986,6 +987,7 @@ journal_t * jbd2_journal_init_inode (struct inode *inode) | |||
| 986 | 987 | ||
| 987 | return journal; | 988 | return journal; |
| 988 | out_err: | 989 | out_err: |
| 990 | kfree(journal->j_wbuf); | ||
| 989 | jbd2_stats_proc_exit(journal); | 991 | jbd2_stats_proc_exit(journal); |
| 990 | kfree(journal); | 992 | kfree(journal); |
| 991 | return NULL; | 993 | return NULL; |
