Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b3d1dbbd authored by Sage Weil's avatar Sage Weil
Browse files

ceph: don't save sent messages on lossy connections



For lossy connections we drop all state on socket errors, so there is no
reason to keep sent ceph_msg's around.

Signed-off-by: default avatarSage Weil <sage@newdream.net>
parent 92ac41d0
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -453,12 +453,16 @@ static void prepare_write_message(struct ceph_connection *con)
		con->out_kvec_bytes = 1 + sizeof(con->out_temp_ack);
	}

	/* move message to sending/sent list */
	m = list_first_entry(&con->out_queue,
		       struct ceph_msg, list_head);
	con->out_msg = m;
	if (test_bit(LOSSYTX, &con->state)) {
		/* put message on sent list */
		ceph_msg_get(m);
		list_move_tail(&m->list_head, &con->out_sent);
	} else {
		list_del_init(&m->list_head);
	}

	m->hdr.seq = cpu_to_le64(++con->out_seq);