From: Kemeng Shi Date: Tue, 14 May 2024 11:24:30 +0000 (+0800) Subject: jbd2: avoid memleak in jbd2_journal_write_metadata_buffer X-Git-Tag: v6.11-rc1~122^2~36 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cc102aa24638b90e04364d64e4f58a1fa91a1976;p=thirdparty%2Fkernel%2Flinux.git jbd2: avoid memleak in jbd2_journal_write_metadata_buffer The new_bh is from alloc_buffer_head, we should call free_buffer_head to free it in error case. Signed-off-by: Kemeng Shi Reviewed-by: Zhang Yi Reviewed-by: Jan Kara Link: https://patch.msgid.link/20240514112438.1269037-2-shikemeng@huaweicloud.com Signed-off-by: Theodore Ts'o --- diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c index 03c4b9214f564..5ad255ffb289c 100644 --- a/fs/jbd2/journal.c +++ b/fs/jbd2/journal.c @@ -399,6 +399,7 @@ repeat: tmp = jbd2_alloc(bh_in->b_size, GFP_NOFS); if (!tmp) { brelse(new_bh); + free_buffer_head(new_bh); return -ENOMEM; } spin_lock(&jh_in->b_state_lock);