From: pschwan Date: Thu, 7 Nov 2002 04:23:31 +0000 (+0000) Subject: b=290,311 X-Git-Tag: 0.5.16~6 X-Git-Url: https://git.whamcloud.com/gitweb?a=commitdiff_plain;h=ce7525b721e067f76b96d391f49257b15440bae1;p=fs%2Flustre-release.git b=290,311 - call obd_cancel_unused with the correct parameters - only call it for regular files (those with non-NULL lli->lli_smd) --- diff --git a/lustre/llite/super.c b/lustre/llite/super.c index 4a13a11..7635fc8 100644 --- a/lustre/llite/super.c +++ b/lustre/llite/super.c @@ -352,6 +352,7 @@ static void ll_put_super(struct super_block *sb) static void ll_clear_inode(struct inode *inode) { struct ll_sb_info *sbi = ll_i2sbi(inode); + struct ll_inode_info *lli = ll_i2info(inode); int rc; ENTRY; @@ -361,14 +362,16 @@ static void ll_clear_inode(struct inode *inode) /* XXX FIXME do something dramatic */ } - rc = obd_cancel_unused(&sbi->ll_osc_conn, inode, LDLM_FL_NO_CALLBACK); - if (rc < 0) { - CERROR("obd_cancel_unused: %d\n", rc); - /* XXX FIXME do something dramatic */ + if (lli->lli_smd) { + rc = obd_cancel_unused(&sbi->ll_osc_conn, lli->lli_smd, + LDLM_FL_NO_CALLBACK); + if (rc < 0) { + CERROR("obd_cancel_unused: %d\n", rc); + /* XXX FIXME do something dramatic */ + } } if (atomic_read(&inode->i_count) == 0) { - struct ll_inode_info *lli = ll_i2info(inode); struct lov_stripe_md *lsm = lli->lli_smd; char *symlink_name = lli->lli_symlink_name;