when filelock is in XLOCKDONE state. client of xlocker can rdlock
the filelock. In that case, only client of xlocker can read the lock.
Fixes: http://tracker.ceph.com/issues/18708
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit
fe4ab52b30079a785be053a9fd0197d6990737fe)
{
dout(10) << "dir_is_nonempty " << *in << dendl;
assert(in->is_auth());
- assert(in->filelock.can_read(-1));
+ assert(in->filelock.can_read(mdr->get_client()));
frag_info_t dirstat;
version_t dirstat_version = in->get_projected_inode()->dirstat.version;