1
0
mirror of https://github.com/ceph/ceph synced 2025-04-01 14:51:13 +00:00

mds: don't open dirfrag while subtree is frozen

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
This commit is contained in:
Yan, Zheng 2013-03-12 20:51:43 +08:00 committed by Greg Farnum
parent fcf170b81b
commit d1602b3b7e

View File

@ -7094,9 +7094,9 @@ int MDCache::path_traverse(MDRequest *mdr, Message *req, Context *fin, // wh
if (!curdir) {
if (cur->is_auth()) {
// parent dir frozen_dir?
if (cur->is_frozen_dir()) {
dout(7) << "traverse: " << *cur->get_parent_dir() << " is frozen_dir, waiting" << dendl;
cur->get_parent_dn()->get_dir()->add_waiter(CDir::WAIT_UNFREEZE, _get_waiter(mdr, req, fin));
if (cur->is_frozen()) {
dout(7) << "traverse: " << *cur << " is frozen, waiting" << dendl;
cur->add_waiter(CDir::WAIT_UNFREEZE, _get_waiter(mdr, req, fin));
return 1;
}
curdir = cur->get_or_open_dirfrag(this, fg);