From 4077a0fd285dd0650e00f074e4d2c49fb9493ae2 Mon Sep 17 00:00:00 2001
From: ericm <ericm>
Date: Wed, 3 Mar 2004 16:52:32 +0000
Subject: [PATCH] liblustre:  - another inode drop fix  - fix a stupid error of
 last checkin

---
 lustre/liblustre/namei.c | 6 ++----
 lustre/liblustre/super.c | 2 +-
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/lustre/liblustre/namei.c b/lustre/liblustre/namei.c
index a9bd06723a..1f23df9428 100644
--- a/lustre/liblustre/namei.c
+++ b/lustre/liblustre/namei.c
@@ -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;
diff --git a/lustre/liblustre/super.c b/lustre/liblustre/super.c
index 82ab7ca0d2..392e22ac8c 100644
--- a/lustre/liblustre/super.c
+++ b/lustre/liblustre/super.c
@@ -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);
-- 
GitLab