Whamcloud - gitweb
LU-1951 mdd: fix for error handler of mdd_rename
authorLiang Zhen <liang@whamcloud.com>
Fri, 5 Oct 2012 12:16:19 +0000 (20:16 +0800)
committerOleg Drokin <green@whamcloud.com>
Tue, 9 Oct 2012 01:03:24 +0000 (21:03 -0400)
commit0184a93f3c0244a82d542b775a35a693d955abe4
tree959e2166205d0fc4a9c53620c6906d05a625b827
parent697a7ceecd580deb86477aa0764295706ea92b3b
LU-1951 mdd: fix for error handler of mdd_rename

If mdd_rename() failed to unlink target file/dir, it will try to
revert everything including insert target file/dir back into target
directory, but it didn't restore nlink count of target, which will
leave a file/dir under target directory with wrong nlink number.

Another thing is fixed by this patch is, mdd_attr_check_set_internal()
didn't release mdd_write_lock() while jumping to error handler.

Signed-off-by: Liang Zhen <liang@whamcloud.com>
Change-Id: I18776a8415933a1ce125f91a96deb11436057ec9
Reviewed-on: http://review.whamcloud.com/4197
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/mdd/mdd_dir.c