diff --git a/fs/ceph/inode.c b/fs/ceph/inode.c index 05dd66fe23a2892ec5cf0e433b7d206fdba3edb4..be2d87f33177d8252b8f1cb7a3db111332426b76 100644 --- a/fs/ceph/inode.c +++ b/fs/ceph/inode.c @@ -1236,10 +1236,8 @@ int ceph_fill_trace(struct super_block *sb, struct ceph_mds_request *req, dout("d_delete %p\n", dn); d_delete(dn); } else { - dout("d_instantiate %p NULL\n", dn); - d_instantiate(dn, NULL); if (have_lease && d_unhashed(dn)) - d_rehash(dn); + d_add(dn, NULL); update_dentry_lease(dn, rinfo->dlease, session, req->r_request_started);