From 0a583e0e3f1be49a1508e8aa137cfc57740c2b8c Mon Sep 17 00:00:00 2001 From: adilger Date: Wed, 17 Mar 2004 10:53:44 +0000 Subject: [PATCH] Clean up properly if llog_lvfs_close() fails. b=2325 --- lustre/obdclass/llog_lvfs.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lustre/obdclass/llog_lvfs.c b/lustre/obdclass/llog_lvfs.c index efaf2d3..556ee1b 100644 --- a/lustre/obdclass/llog_lvfs.c +++ b/lustre/obdclass/llog_lvfs.c @@ -564,12 +564,13 @@ static int llog_lvfs_destroy(struct llog_handle *handle) push_ctxt(&saved, &obd->obd_ctxt, NULL); dget(fdentry); rc = llog_lvfs_close(handle); - if (rc) - RETURN(rc); - down(&inode->i_sem); - rc = vfs_unlink(inode, fdentry); - up(&inode->i_sem); + if (rc == 0) { + down(&inode->i_sem); + rc = vfs_unlink(inode, fdentry); + up(&inode->i_sem); + } + dput(fdentry); pop_ctxt(&saved, &obd->obd_ctxt, NULL); RETURN(rc); -- 1.8.3.1