Thread (5 messages) 5 messages, 2 authors, 2018-11-08

Re: [PATCH 1/7] ext4: lost brelse in __ext4_read_dirblock()

From: Vasily Averin <hidden>
Date: 2018-11-07 17:18:19
Also in: lkml

I was wrong here, but brelse is lost in next error in this function.
I'll resend new patch.

On 11/7/18 6:25 PM, Theodore Y. Ts'o wrote:
On Wed, Oct 31, 2018 at 10:12:18PM +0300, Vasily Averin wrote:
quoted
Fixes dc6982ff4db1 ("ext4: refactor code to read directory blocks ...") # 3.9

Signed-off-by: Vasily Averin <redacted>
---
 fs/ext4/namei.c | 1 +
 1 file changed, 1 insertion(+)
diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c
index d388cce72db2..1a21e59ede72 100644
--- a/fs/ext4/namei.c
+++ b/fs/ext4/namei.c
@@ -111,6 +111,7 @@ static struct buffer_head *__ext4_read_dirblock(struct inode *inode,
 	if (!bh) {
 		ext4_error_inode(inode, func, line, block,
 				 "Directory hole found");
+		brelse(bh);
 		return ERR_PTR(-EFSCORRUPTED);
 	}
 	dirent = (struct ext4_dir_entry *) bh->b_data;
Inside the conditional, bh == NULL, so the brelse isn't needed.

Cheers,

						- Ted
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help