The use of 'status' in __ocfs2_add_entry() can return wrong status when some functions are failed.
If ocfs2_journal_access_db() in __ocfs2_add_entry() is failed, that status is saved to 'status' but return variable is 'retval' which is saved 'success' status. In case of this, __ocfs2_add_entry() is failed but can be returned as 'success'. So replace 'status' with 'retval'. Signed-off-by: Daeseok Youn <daeseok.y...@gmail.com> --- V2 : update changelog fs/ocfs2/dir.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/fs/ocfs2/dir.c b/fs/ocfs2/dir.c index b08050b..1478a50 100644 --- a/fs/ocfs2/dir.c +++ b/fs/ocfs2/dir.c @@ -1617,7 +1617,7 @@ int __ocfs2_add_entry(handle_t *handle, struct ocfs2_dir_entry *de, *de1; struct ocfs2_dinode *di = (struct ocfs2_dinode *)parent_fe_bh->b_data; struct super_block *sb = dir->i_sb; - int retval, status; + int retval; unsigned int size = sb->s_blocksize; struct buffer_head *insert_bh = lookup->dl_leaf_bh; char *data_start = insert_bh->b_data; @@ -1695,22 +1695,22 @@ int __ocfs2_add_entry(handle_t *handle, } if (insert_bh == parent_fe_bh) - status = ocfs2_journal_access_di(handle, + retval = ocfs2_journal_access_di(handle, INODE_CACHE(dir), insert_bh, OCFS2_JOURNAL_ACCESS_WRITE); else { - status = ocfs2_journal_access_db(handle, + retval = ocfs2_journal_access_db(handle, INODE_CACHE(dir), insert_bh, OCFS2_JOURNAL_ACCESS_WRITE); if (ocfs2_dir_indexed(dir)) { - status = ocfs2_dx_dir_insert(dir, + retval = ocfs2_dx_dir_insert(dir, handle, lookup); - if (status) { - mlog_errno(status); + if (retval) { + mlog_errno(retval); goto bail; } } -- 1.7.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/