From: Radoslaw Zarzynski Date: Wed, 27 Feb 2019 21:03:27 +0000 (+0100) Subject: msg, msg/async, v2: drop crc fields from ceph_msg_header2. X-Git-Tag: v14.1.1~70^2~12 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=7b7ce58f4e5565e1cbb9a0891bf5957292e17ff3;p=ceph.git msg, msg/async, v2: drop crc fields from ceph_msg_header2. Signed-off-by: Radoslaw Zarzynski --- diff --git a/src/include/msgr.h b/src/include/msgr.h index 527197cbb319..4029443d0a4e 100644 --- a/src/include/msgr.h +++ b/src/include/msgr.h @@ -204,13 +204,10 @@ struct ceph_msg_header2 { receiver: mask against ~PAGE_MASK */ __le64 ack_seq; - - __le32 front_crc, middle_crc, data_crc; __u8 flags; /* oldest code we think can decode this. unknown if zero. */ __le16 compat_version; __le16 reserved; - __le32 header_crc; } __attribute__ ((packed)); #define CEPH_MSG_PRIO_LOW 64 diff --git a/src/msg/async/ProtocolV2.cc b/src/msg/async/ProtocolV2.cc index 71ed6065e7a4..361aa06f9a18 100644 --- a/src/msg/async/ProtocolV2.cc +++ b/src/msg/async/ProtocolV2.cc @@ -399,7 +399,7 @@ void ProtocolV2::prepare_send_message(uint64_t features, } // encode and copy out of *m - m->encode(features, messenger->crcflags); + m->encode(features, 0); } void ProtocolV2::send_message(Message *m) { @@ -509,16 +509,9 @@ ssize_t ProtocolV2::write_message(Message *m, bool more) { header.type, header.priority, header.version, 0, header.data_off, - ack_seq, footer.front_crc, - footer.middle_crc, footer.data_crc, + ack_seq, footer.flags, header.compat_version, - header.reserved, 0}; - - if (messenger->crcflags & MSG_CRC_HEADER) { - header2.header_crc = - ceph_crc32c(0, (unsigned char *)&header2, - sizeof(header2) - sizeof(header2.header_crc)); - } + header.reserved}; auto message = MessageHeaderFrame::Encode(session_stream_handlers, header2, @@ -1316,18 +1309,6 @@ CtPtr ProtocolV2::handle_message() { << " off " << header.data_off << dendl; - if (messenger->crcflags & MSG_CRC_HEADER) { - __u32 header_crc = 0; - header_crc = ceph_crc32c(0, (unsigned char *)&header, - sizeof(header) - sizeof(header.header_crc)); - // verify header crc - if (header_crc != header.header_crc) { - ldout(cct, 0) << __func__ << " got bad header crc " << header_crc - << " != " << header.header_crc << dendl; - return _fault(); - } - } - INTERCEPT(16); // Reset state @@ -1497,10 +1478,9 @@ CtPtr ProtocolV2::handle_message_complete() { current_header.compat_version, current_header.reserved, 0}; - ceph_msg_footer footer{current_header.front_crc, current_header.middle_crc, - current_header.data_crc, 0, current_header.flags}; + ceph_msg_footer footer{0, 0, 0, 0, current_header.flags}; - Message *message = decode_message(cct, messenger->crcflags, header, footer, + Message *message = decode_message(cct, 0, header, footer, rx_segments_data[SegmentIndex::Msg::FRONT], rx_segments_data[SegmentIndex::Msg::MIDDLE], rx_segments_data[SegmentIndex::Msg::DATA], diff --git a/src/msg/async/frames_v2.h b/src/msg/async/frames_v2.h index f1c60db9a4f4..dbbb29e6c923 100644 --- a/src/msg/async/frames_v2.h +++ b/src/msg/async/frames_v2.h @@ -647,10 +647,6 @@ struct MessageHeaderFrame // auth tag will be appended at the end f.payload = session_stream_handlers.tx->authenticated_encrypt_final(); } else { - f.payload.append(front); - f.payload.append(middle); - f.payload.append(data); - epilogue_block_t epilogue; ceph::bufferlist::const_iterator hdriter(&f.payload, FRAME_PREAMBLE_SIZE); epilogue.crc_values[SegmentIndex::Msg::HEADER] = @@ -659,6 +655,9 @@ struct MessageHeaderFrame epilogue.crc_values[SegmentIndex::Msg::MIDDLE] = middle.crc32c(-1), epilogue.crc_values[SegmentIndex::Msg::DATA] = data.crc32c(-1), + f.payload.append(front); + f.payload.append(middle); + f.payload.append(data); f.payload.append(reinterpret_cast(&epilogue), sizeof(epilogue)); }