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 <sage@inktank.com>
(cherry picked from commit
0d67f9b0695765824bdc4a65fbed88edf8ea232e)
// 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
}