Whamcloud - gitweb
liblustre:
authorericm <ericm>
Wed, 3 Mar 2004 16:52:32 +0000 (16:52 +0000)
committerericm <ericm>
Wed, 3 Mar 2004 16:52:32 +0000 (16:52 +0000)
 - another inode drop fix
 - fix a stupid error of last checkin

lustre/liblustre/namei.c
lustre/liblustre/super.c

index a9bd067..1f23df9 100644 (file)
@@ -290,10 +290,8 @@ int llu_pb_revalidate(struct pnode *pnode, int flags, struct lookup_intent *it)
                 ptlrpc_req_finished(req);
         if (rc == 0) {
                 LASSERT(pb->pb_ino);
-                if (S_ISDIR(llu_i2info(pb->pb_ino)->lli_st_mode))
-                        llu_invalidate_inode_pages(pb->pb_ino);
-                llu_i2info(pb->pb_ino)->lli_stale_flag = 1;
-                unhook_stale_inode(pnode);
+                I_RELE(pb->pb_ino);
+                pb->pb_ino = NULL;
         } else {
                 llu_lookup_finish_locks(it, pnode);
                 llu_i2info(pb->pb_ino)->lli_stale_flag = 0;
index 82ab7ca..392e22a 100644 (file)
@@ -1239,7 +1239,7 @@ struct inode *llu_iget(struct filesys *fs, struct lustre_md *md)
                 struct llu_inode_info *lli = llu_i2info(inode);
 
                 if (lli->lli_stale_flag ||
-                    lli->lli_st_generation == md->body->generation)
+                    lli->lli_st_generation != md->body->generation)
                         I_RELE(inode);
                 else {
                         llu_update_inode(inode, md->body, md->lsm);