]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: when going down, release caps anyway
authorYehuda Sadeh <yehuda@hq.newdream.net>
Fri, 7 Nov 2008 21:10:58 +0000 (13:10 -0800)
committerYehuda Sadeh <yehuda@hq.newdream.net>
Fri, 7 Nov 2008 21:10:58 +0000 (13:10 -0800)
src/kernel/caps.c

index 0e889c54d68fd3262b002be95b4b95de6e40572c..ffcd3e87b33168e82bb764b843588bbe02ac9144 100644 (file)
@@ -647,8 +647,9 @@ retry_locked:
                        goto ack;
                }
 
-               /* completed revocation? */
-               if (revoking && (revoking & used) == 0) {
+               /* completed revocation? going down and there are no caps? */
+               if ((revoking && (revoking & used) == 0) ||
+                   (mdsc->stopping && (used == 0))) {
                        dout(10, "completed revocation of %d\n",
                             cap->implemented & ~cap->issued);
                        goto ack;