From 965d737d2bfb42733f6149b2b9f5496552ece858 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 17 Mar 2010 21:47:00 -0700 Subject: [PATCH] mds: drop gather if it's empty This can happen from scatter_nudge, which may add a sub and then complete it, emptying out the C_Gather. --- src/mds/journal.cc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/mds/journal.cc b/src/mds/journal.cc index 28ef2a98e1007..44ce5b0579c7a 100644 --- a/src/mds/journal.cc +++ b/src/mds/journal.cc @@ -296,6 +296,11 @@ C_Gather *LogSegment::try_to_expire(MDS *mds) } } + if (gather && gather->empty()) { + delete gather; + gather = NULL; + } + if (gather) { dout(6) << "LogSegment(" << offset << ").try_to_expire waiting" << dendl; mds->mdlog->flush();