9a5651b refactored the resend logic for linger op, op->session should be
assigned by _recalc_linger_op_target if resend is needed
Signed-off-by: runsisi <luo.runbing@zte.com.cn>
for (list<LingerOp*>::iterator p = need_resend_linger.begin();
p != need_resend_linger.end(); ++p) {
LingerOp *op = *p;
- if (!op->session) {
- _calc_target(&op->target, nullptr);
- OSDSession *s = NULL;
- const int r = _get_session(op->target.osd, &s, sul);
- ceph_assert(r == 0);
- ceph_assert(s != NULL);
- op->session = s;
- put_session(s);
- }
+ ceph_assert(op->session);
if (!op->session->is_homeless()) {
logger->inc(l_osdc_linger_resend);
_send_linger(op, sul);