]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mds: avoid calling StrayManager::eval_stray() recursively
authorYan, Zheng <zyan@redhat.com>
Mon, 18 May 2015 10:53:25 +0000 (18:53 +0800)
committerYan, Zheng <zyan@redhat.com>
Tue, 19 May 2015 07:47:17 +0000 (15:47 +0800)
commita13414da2c5d0b4ef3f671789127959682d51e51
treebf5da0b918a0698776000e54da74d9906da367da
parentde8b9583d377c7fd8c7760f2ef8ea74f5fc045a8
mds: avoid calling StrayManager::eval_stray() recursively

StrayManager::eval_stray() may close dirfrags and unlink remote
dentries. These operations drop inode's reference, which may call
StrayManager::eval_stray() again.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
src/mds/CDentry.h
src/mds/StrayManager.cc
src/mds/StrayManager.h