Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6c474f7b authored by Maxim's avatar Maxim Committed by Steven Whitehouse
Browse files

GFS2: Adding missing unlock_page()



gfs2_write_begin() calls grab_cache_page_write_begin() that returns *locked*
page. Correspondent error-handling path lacks for unlock_page() call:

> out:
> 	if (error == 0)
> 		return 0;
>
> 	page_cache_release(page);

The whole system hangs if gfs2_unstuff_dinode() called from gfs2_write_begin()
failed for some reason.

Reported-by: default avatarMaxim <maxim.patlasov@gmail.com>
Signed-off-by: default avatarMaxim <maxim.patlasov@gmail.com>
Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
parent c618e87a
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -695,6 +695,7 @@ static int gfs2_write_begin(struct file *file, struct address_space *mapping,
	if (error == 0)
		return 0;

	unlock_page(page);
	page_cache_release(page);

	gfs2_trans_end(sdp);