summaryrefslogtreecommitdiffstats
path: root/net/colo-compare.c
diff options
context:
space:
mode:
authorRao, Lei2021-06-08 10:23:31 +0200
committerJason Wang2021-06-11 04:30:13 +0200
commit5a2d9929ac1f01a1e8ef2a3f56f69e6069863dad (patch)
tree10b23f57efbea25f91d2cdbb630e83ecd0bce5fb /net/colo-compare.c
parentAdd the function of colo_compare_cleanup (diff)
downloadqemu-5a2d9929ac1f01a1e8ef2a3f56f69e6069863dad.tar.gz
qemu-5a2d9929ac1f01a1e8ef2a3f56f69e6069863dad.tar.xz
qemu-5a2d9929ac1f01a1e8ef2a3f56f69e6069863dad.zip
Fixed calculation error of pkt->header_size in fill_pkt_tcp_info()
The data pointer has skipped vnet_hdr_len in the function of parse_packet_early().So, we can not subtract vnet_hdr_len again when calculating pkt->header_size in fill_pkt_tcp_info(). Otherwise, it will cause network packet comparsion errors and greatly increase the frequency of checkpoints. Signed-off-by: Lei Rao <lei.rao@intel.com> Signed-off-by: Zhang Chen <chen.zhang@intel.com> Reviewed-by: Li Zhijian <lizhijian@fujitsu.com> Reviewed-by: Zhang Chen <chen.zhang@intel.com> Reviewed-by: Lukas Straub <lukasstraub2@web.de> Tested-by: Lukas Straub <lukasstraub2@web.de> Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'net/colo-compare.c')
-rw-r--r--net/colo-compare.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/colo-compare.c b/net/colo-compare.c
index 5b538f4e0b..b100e7b51f 100644
--- a/net/colo-compare.c
+++ b/net/colo-compare.c
@@ -211,7 +211,7 @@ static void fill_pkt_tcp_info(void *data, uint32_t *max_ack)
pkt->tcp_ack = ntohl(tcphd->th_ack);
*max_ack = *max_ack > pkt->tcp_ack ? *max_ack : pkt->tcp_ack;
pkt->header_size = pkt->transport_header - (uint8_t *)pkt->data
- + (tcphd->th_off << 2) - pkt->vnet_hdr_len;
+ + (tcphd->th_off << 2);
pkt->payload_size = pkt->size - pkt->header_size;
pkt->seq_end = pkt->tcp_seq + pkt->payload_size;
pkt->flags = tcphd->th_flags;