From patchwork Mon Dec 24 02:39:07 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: fs/jbd: set pointer = NULL, after kfree it. Date: Sun, 23 Dec 2012 16:39:07 -0000 From: Chen Gang X-Patchwork-Id: 208016 Message-Id: <50D7C04B.6010109@asianux.com> To: akpm@linux-foundation.org, jack@suse.cz Cc: linux-ext4@vger.kernel.org set pointer = NULL, after call journal_destroy_revoke_table. in journal_destroy_revoke_table, it will call kfree to free the buffer. Signed-off-by: Chen Gang --- fs/jbd/revoke.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/fs/jbd/revoke.c b/fs/jbd/revoke.c index 25c713e..d6457b0 100644 --- a/fs/jbd/revoke.c +++ b/fs/jbd/revoke.c @@ -295,6 +295,7 @@ int journal_init_revoke(journal_t *journal, int hash_size) fail1: journal_destroy_revoke_table(journal->j_revoke_table[0]); + journal->j_revoke_table[0] = NULL; fail0: return -ENOMEM; } @@ -303,10 +304,14 @@ fail0: void journal_destroy_revoke(journal_t *journal) { journal->j_revoke = NULL; - if (journal->j_revoke_table[0]) + if (journal->j_revoke_table[0]) { journal_destroy_revoke_table(journal->j_revoke_table[0]); - if (journal->j_revoke_table[1]) + journal->j_revoke_table[0] = NULL; + } + if (journal->j_revoke_table[1]) { journal_destroy_revoke_table(journal->j_revoke_table[1]); + journal->j_revoke_table[1] = NULL; + } }