From mboxrd@z Thu Jan 1 00:00:00 1970 From: Srinivas Eeda Date: Wed, 26 Mar 2014 10:10:29 -0700 Subject: [Ocfs2-devel] [PATCH] ocfs2: do not put bh when buffer_uptodate failed In-Reply-To: <53322C82.6030800@huawei.com> References: <53312AD6.4080607@huawei.com> <5331CEB1.8030706@oracle.com> <53322C82.6030800@huawei.com> Message-ID: <53330A05.4030703@oracle.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: ocfs2-devel@oss.oracle.com Thanks for explaining Reviewed-by: Srinivas Eeda On 03/25/2014 06:25 PM, alex chen wrote: > On 2014/3/26 2:45, Srinivas Eeda wrote: >> These changes looks good to me. However ocfs2_read_blocks and >> ocfs2_read_blocks_sync needs the same fix ? :) > There is no need to do this in ocfs2_read_blocks and > ocfs2_read_blocks_sync, because bh will be set to NULL after put_bh, > and brelse will handle it. > >> On 03/25/2014 12:05 AM, alex chen wrote: >>> Do not put bh when buffer_uptodate failed in ocfs2_write_block and >>> ocfs2_write_super_or_backup, because it will put bh in b_end_io. >>> Otherwise it will hit a warning "VFS: brelse: Trying to free free >>> buffer". >>> >>> Signed-off-by: Alex Chen >>> Reviewed-by: Joseph Qi >>> --- >>> fs/ocfs2/buffer_head_io.c | 2 -- >>> 1 file changed, 2 deletions(-) >>> >>> diff --git a/fs/ocfs2/buffer_head_io.c b/fs/ocfs2/buffer_head_io.c >>> index 5b704c6..1edcb14 100644 >>> --- a/fs/ocfs2/buffer_head_io.c >>> +++ b/fs/ocfs2/buffer_head_io.c >>> @@ -90,7 +90,6 @@ int ocfs2_write_block(struct ocfs2_super *osb, struct buffer_head *bh, >>> * information for this bh as it's not marked locally >>> * uptodate. */ >>> ret = -EIO; >>> - put_bh(bh); >>> mlog_errno(ret); >>> } >>> >>> @@ -420,7 +419,6 @@ int ocfs2_write_super_or_backup(struct ocfs2_super *osb, >>> >>> if (!buffer_uptodate(bh)) { >>> ret = -EIO; >>> - put_bh(bh); >>> mlog_errno(ret); >>> } >>> >> >> _______________________________________________ >> Ocfs2-devel mailing list >> Ocfs2-devel at oss.oracle.com >> https://oss.oracle.com/mailman/listinfo/ocfs2-devel >> >>