]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: send cap flush ack even when access check failed.
authorYan, Zheng <zyan@redhat.com>
Fri, 14 Aug 2015 07:33:27 +0000 (15:33 +0800)
committerSage Weil <sage@redhat.com>
Thu, 1 Oct 2015 13:41:32 +0000 (09:41 -0400)
Signed-off-by: Yan, Zheng <zyan@redhat.com>
src/mds/Locker.cc

index 0cbb5e3982dfbe9543702e92d907b9cfe4948a87..e1f5067a866dd1f05c536a91633afc613d9efb6d 100644 (file)
@@ -3134,6 +3134,8 @@ bool Locker::_do_cap_update(CInode *in, Capability *cap,
   Session *session = static_cast<Session *>(m->get_connection()->get_priv());
   if (!session->check_access(in, MAY_WRITE, m->caller_uid, m->caller_gid, 0, 0)) {
     dout(10) << "check_access failed, dropping cap update on " << *in << dendl;
+    if (ack)
+      mds->send_message_client_counted(ack, client);
     return false;
   }
   session->put();