]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mds: eval stray on remove dentry replica
authorJohn Spray <john.spray@redhat.com>
Mon, 16 Feb 2015 17:03:42 +0000 (17:03 +0000)
committerJohn Spray <john.spray@redhat.com>
Fri, 20 Mar 2015 12:32:47 +0000 (12:32 +0000)
commit763e26c41e0a56ea12f9bc39b5821cdb48d8cdbf
tree5fb47653d9d300d3dc4c49d13771dfeee33c523f
parent28a10164f300d1481c903947278c17e49dad9e47
mds: eval stray on remove dentry replica

This happens because when handling an MCacheExpire,
we expire inodes first and then dentries, so when
the inodes are put() their dentries still are replicated
so eval_stray fails.  Do an explicit call to maybe_eval_stray
when handling the expire for the dentry in order to catch
this.

One hits this path when migrating a stray away from
a stopping MDS rank.

Signed-off-by: John Spray <john.spray@redhat.com>
src/mds/MDCache.cc