]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: fix snap_rwsem link on non-existent cap release
authorSage Weil <sage@newdream.net>
Fri, 16 Jan 2009 23:37:46 +0000 (15:37 -0800)
committerSage Weil <sage@newdream.net>
Sat, 17 Jan 2009 00:07:54 +0000 (16:07 -0800)
src/kernel/caps.c

index e5482fbaab3f010580a2f69422e15039e664f9b4..b0bc9c75741167cd4f0d62fdb38d61a90ff76147 100644 (file)
@@ -1632,7 +1632,6 @@ void ceph_handle_caps(struct ceph_mds_client *mdsc,
                up_write(&mdsc->snap_rwsem);
                check_caps = 1; /* we may have sent a RELEASE to the old auth */
                goto done;
-
        }
 
        /* preallocate space for xattrs? */
@@ -1694,6 +1693,7 @@ bad:
        return;
 
 release:
+       up_write(&mdsc->snap_rwsem);
        send_cap_msg(mdsc, vino.ino, CEPH_CAP_OP_RELEASE,
                     0, 0, 0,
                     seq, 0,