MCPcopy Create free account
hub / github.com/ceph/ceph / requeue_sent

Method requeue_sent

src/msg/async/ProtocolV2.cc:197–214  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

195void ProtocolV2::fault() { _fault(); }
196
197void ProtocolV2::requeue_sent() {
198 write_in_progress = false;
199 if (sent.empty()) {
200 return;
201 }
202
203 auto& rq = out_queue[CEPH_MSG_PRIO_HIGHEST];
204 out_seq -= sent.size();
205 while (!sent.empty()) {
206 Message *m = sent.back();
207 sent.pop_back();
208 ldout(cct, 5) << __func__ << " requeueing message m=" << m
209 << " seq=" << m->get_seq() << " type=" << m->get_type() << " "
210 << *m << dendl;
211 m->clear_payload();
212 rq.emplace_front(out_queue_entry_t{false, m});
213 }
214}
215
216uint64_t ProtocolV2::discard_requeued_up_to(uint64_t out_seq, uint64_t seq) {
217 ldout(cct, 10) << __func__ << " " << seq << dendl;

Callers 1

reuse_connectionMethod · 0.45

Calls 8

clear_payloadMethod · 0.80
emplace_frontMethod · 0.80
emptyMethod · 0.45
sizeMethod · 0.45
backMethod · 0.45
pop_backMethod · 0.45
get_seqMethod · 0.45
get_typeMethod · 0.45

Tested by

no test coverage detected