aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Xu <peterx@redhat.com>2024-02-02 18:28:45 +0800
committerPeter Xu <peterx@redhat.com>2024-02-05 14:42:10 +0800
commit8a9ef1738037e1d1132f9e1bd3e2f1102bde719f (patch)
tree555112a7e2ff9f3aa6e7a0821a5e2576c8011d1d
parentdb7e1cc5103137743394a939045a17fa2b30a0dc (diff)
downloadqemu-8a9ef1738037e1d1132f9e1bd3e2f1102bde719f.zip
qemu-8a9ef1738037e1d1132f9e1bd3e2f1102bde719f.tar.gz
qemu-8a9ef1738037e1d1132f9e1bd3e2f1102bde719f.tar.bz2
migration/multifd: Move trace_multifd_send|recv()
Move them into fill/unfill of packets. With that, we can further cleanup the send/recv thread procedure, and remove one more temp var. Reviewed-by: Fabiano Rosas <farosas@suse.de> Link: https://lore.kernel.org/r/20240202102857.110210-12-peterx@redhat.com Signed-off-by: Peter Xu <peterx@redhat.com>
-rw-r--r--migration/multifd.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/migration/multifd.c b/migration/multifd.c
index 94a0124..44163e4 100644
--- a/migration/multifd.c
+++ b/migration/multifd.c
@@ -291,6 +291,9 @@ static void multifd_send_fill_packet(MultiFDSendParams *p)
p->packets_sent++;
p->total_normal_pages += pages->num;
+
+ trace_multifd_send(p->id, p->packet_num, pages->num, p->flags,
+ p->next_packet_size);
}
static int multifd_recv_unfill_packet(MultiFDRecvParams *p, Error **errp)
@@ -341,6 +344,9 @@ static int multifd_recv_unfill_packet(MultiFDRecvParams *p, Error **errp)
p->packets_recved++;
p->total_normal_pages += p->normal_num;
+ trace_multifd_recv(p->id, p->packet_num, p->normal_num, p->flags,
+ p->next_packet_size);
+
if (p->normal_num == 0) {
return 0;
}
@@ -704,7 +710,6 @@ static void *multifd_send_thread(void *opaque)
qemu_mutex_lock(&p->mutex);
if (qatomic_read(&p->pending_job)) {
- uint64_t packet_num = p->packet_num;
MultiFDPages_t *pages = p->pages;
if (use_zero_copy_send) {
@@ -722,8 +727,6 @@ static void *multifd_send_thread(void *opaque)
}
multifd_send_fill_packet(p);
- trace_multifd_send(p->id, packet_num, pages->num, p->flags,
- p->next_packet_size);
if (use_zero_copy_send) {
/* Send header first, without zerocopy */
@@ -1123,8 +1126,6 @@ static void *multifd_recv_thread(void *opaque)
flags = p->flags;
/* recv methods don't know how to handle the SYNC flag */
p->flags &= ~MULTIFD_FLAG_SYNC;
- trace_multifd_recv(p->id, p->packet_num, p->normal_num, flags,
- p->next_packet_size);
qemu_mutex_unlock(&p->mutex);
if (p->normal_num) {