--
 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 7138737..4390f6f 100644
--- a/fs/gfs2/lops.c
+++ b/fs/gfs2/lops.c
@@ -404,8 +404,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++;
 


Reply via email to