From: Yan, Zheng Date: Mon, 12 May 2014 02:24:51 +0000 (+0800) Subject: mds: properly clear new flag for stale client cap X-Git-Tag: v0.81~15^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f35648bf08880f6e6fb8adab470d838df93bcae7;p=ceph.git mds: properly clear new flag for stale client cap CInode::encode_inodestat() should clear the 'new' flag of client cap even when session is stale, because the 'new' flag prevents Locker::issue_caps() from sending cap message to client. Signed-off-by: Yan, Zheng --- diff --git a/src/mds/CInode.cc b/src/mds/CInode.cc index 529f1eed6503..94705de26f67 100644 --- a/src/mds/CInode.cc +++ b/src/mds/CInode.cc @@ -2981,6 +2981,8 @@ int CInode::encode_inodestat(bufferlist& bl, Session *session, e.cap.mseq = cap->get_mseq(); e.cap.realm = realm->inode->ino(); } else { + if (cap) + cap->clear_new(); e.cap.cap_id = 0; e.cap.caps = 0; e.cap.seq = 0;