crimson: set src for message

monitor will panic at seeing a MOSDBoot message which is not from an
OSD. see OSDMonitor::preprocess_boot()
```
ceph_assert(m->get_orig_source_inst().name.is_osd());
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
This commit is contained in:
Kefu Chai 2019-01-10 21:15:18 +08:00
parent 7875183c76
commit fc21dcf4cf

View File

@ -230,10 +230,11 @@ bool SocketConnection::update_rx_seq(seq_num_t seq)
seastar::future<> SocketConnection::write_message(MessageRef msg)
{
msg->set_seq(++out_seq);
auto& header = msg->get_header();
header.src = messenger.get_myname();
msg->encode(features, messenger.get_crc_flags());
bufferlist bl;
bl.append(CEPH_MSGR_TAG_MSG);
auto& header = msg->get_header();
bl.append((const char*)&header, sizeof(header));
bl.append(msg->get_payload());
bl.append(msg->get_middle());