]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: simplify dentry lease revocation a bit
authorSage Weil <sage@newdream.net>
Sun, 20 Apr 2008 19:43:04 +0000 (12:43 -0700)
committerSage Weil <sage@newdream.net>
Sun, 20 Apr 2008 19:43:04 +0000 (12:43 -0700)
src/kernel/dir.c
src/kernel/mds_client.c

index 8103ae413ab619688d2095a698372c7821180b2b..77013a496dcdc62848e18bbd0aa7a97c9e073216 100644 (file)
@@ -539,12 +539,7 @@ static int ceph_dentry_revalidate(struct dentry *dentry, struct nameidata *nd)
 
 static void ceph_dentry_release(struct dentry *dentry)
 {
-       struct ceph_dentry_info *di;
-       if (dentry->d_fsdata) {
-               di = ceph_dentry(dentry);
-               list_del(&di->lease_item);
-               kfree(di);
-       }
+       BUG_ON(dentry->d_fsdata);
 }
 
 const struct file_operations ceph_dir_fops = {
index 5699de8e108c8a3263675e264456897b46dd3b17..93735e6b1b33ed91d72369c3fedfaf78f59cf27c 100644 (file)
@@ -620,21 +620,17 @@ static void remove_session_caps(struct ceph_mds_session *session)
 void revoke_dentry_lease(struct dentry *dentry)
 {
        struct ceph_dentry_info *di;
-       struct ceph_mds_session *session;
-       int drop = 0;
 
        /* detach from dentry */
        spin_lock(&dentry->d_lock);
        di = ceph_dentry(dentry);
        if (di) {
-               session = di->lease_session;
                list_del(&di->lease_item);
                kfree(di);
-               drop = 1;
                dentry->d_fsdata = 0;
        }
        spin_unlock(&dentry->d_lock);
-       if (drop)
+       if (di)
                dput(dentry);
 }