[Cluster-devel] [PATCH][GFS2] Memory leak on revoke error
Bob Peterson <[email protected]>
| Newsgroups | com.redhat.cluster-devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, I ran across this rare memory leak in revoke_lo_scan_elements while working on bz 349271. This patch is for upstream gfs2. Regards, Bob Peterson -- Signed-off-by: Bob Peterson <[email protected]> -- fs/gfs2/lops.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/fs/gfs2/lops.c b/fs/gfs2/lops.c index 29a8689..6dfcf4c 100644 --- a/fs/gfs2/lops.c +++ b/fs/gfs2/lops.c @@ -421,8 +421,10 @@ static int revoke_lo_scan_elements(struct gfs2_jdesc *jd, unsigned int start, blkno = be64_to_cpu(*(__be64 *)(bh->b_data + offset)); error = gfs2_revoke_add(sdp, blkno, start); - if (error < 0) + if (error < 0) { + brelse(bh); return error; + } else if (error) sdp->sd_found_revokes++;