From: Sage Weil Date: Sat, 10 May 2014 17:29:11 +0000 (-0700) Subject: osd/ReplicatedPG: do not queue NULL dup_op X-Git-Tag: v0.80.2~60 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=22e2e7cff42970b00dc352513f1f138132f78d04;p=ceph.git osd/ReplicatedPG: do not queue NULL dup_op We call start_flush() with a NULL op in a couple different places. Do not put a NULL pointer on the dup_ops list or we will crash later. Fixes: #8328 Signed-off-by: Sage Weil (cherry picked from commit 0d67f9b0695765824bdc4a65fbed88edf8ea232e) --- diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 94eec05d4445..4c1d7b66df3d 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -6151,7 +6151,8 @@ int ReplicatedPG::start_flush( // nonblocking can join anything // blocking can only join a blocking flush dout(20) << __func__ << " piggybacking on existing flush " << dendl; - fop->dup_ops.push_back(op); + if (op) + fop->dup_ops.push_back(op); return -EAGAIN; // clean up this ctx; op will retry later }