]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: ensure materialised dentry is hashed
authorSage Weil <sage@newdream.net>
Sat, 21 Jun 2008 15:13:56 +0000 (08:13 -0700)
committerSage Weil <sage@newdream.net>
Sat, 21 Jun 2008 15:13:56 +0000 (08:13 -0700)
src/kernel/inode.c
src/kernel/super.c

index 0ce3bbb09a1eb48d6a3e41c68854007462ce2908..430086343713063316b9238e455a1b2fa38d1de3 100644 (file)
@@ -822,6 +822,8 @@ int ceph_fill_trace(struct super_block *sb, struct ceph_mds_request *req,
                        } else
                                dout(10, "dn %p attached to %p ino %llx\n",
                                     dn, dn->d_inode, ceph_ino(dn->d_inode));
+                       if (d_unhashed(dn))
+                               d_rehash(dn);
                }
                BUG_ON(d_unhashed(dn));
                BUG_ON(dn->d_parent != parent);
index 186d61dd34bdca4eb0d542672983bc2d8bd834ed..09a25aa479c1ad3df301aa35e797bfb43f2d6d78 100644 (file)
@@ -993,8 +993,8 @@ out_kobj:
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25)
        kobject_put(ceph_kobj);
        ceph_kobj = 0;
-#endif
 out:
+#endif
        return ret;
 }