aboutsummaryrefslogtreecommitdiff
path: root/migration/multifd.c
diff options
context:
space:
mode:
authorJuan Quintela <quintela@redhat.com>2022-11-23 20:36:56 +0100
committerJuan Quintela <quintela@redhat.com>2023-04-24 11:28:57 +0200
commitcf671116facf4e29d91fce9c9ffb535385ffac81 (patch)
treeaf737afd7422b308a97d495ff0104ecbbe43ce71 /migration/multifd.c
parent30fb22cda45bea43a3c0e26049ebdd71a9503ffd (diff)
downloadqemu-cf671116facf4e29d91fce9c9ffb535385ffac81.zip
qemu-cf671116facf4e29d91fce9c9ffb535385ffac81.tar.gz
qemu-cf671116facf4e29d91fce9c9ffb535385ffac81.tar.bz2
migration: Make multifd_bytes atomic
In the spirit of: commit 394d323bc3451e4d07f13341cb8817fac8dfbadd Author: Peter Xu <peterx@redhat.com> Date: Tue Oct 11 17:55:51 2022 -0400 migration: Use atomic ops properly for page accountings Reviewed-by: David Edmondson <david.edmondson@oracle.com> Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'migration/multifd.c')
-rw-r--r--migration/multifd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/migration/multifd.c b/migration/multifd.c
index 6ef3a27..1c992ab 100644
--- a/migration/multifd.c
+++ b/migration/multifd.c
@@ -432,9 +432,9 @@ static int multifd_send_pages(QEMUFile *f)
p->pages = pages;
transferred = ((uint64_t) pages->num) * p->page_size + p->packet_len;
qemu_file_acct_rate_limit(f, transferred);
- ram_counters.multifd_bytes += transferred;
qemu_mutex_unlock(&p->mutex);
stat64_add(&ram_counters.transferred, transferred);
+ stat64_add(&ram_counters.multifd_bytes, transferred);
qemu_sem_post(&p->sem);
return 1;
@@ -627,9 +627,9 @@ int multifd_send_sync_main(QEMUFile *f)
p->flags |= MULTIFD_FLAG_SYNC;
p->pending_job++;
qemu_file_acct_rate_limit(f, p->packet_len);
- ram_counters.multifd_bytes += p->packet_len;
qemu_mutex_unlock(&p->mutex);
stat64_add(&ram_counters.transferred, p->packet_len);
+ stat64_add(&ram_counters.multifd_bytes, p->packet_len);
qemu_sem_post(&p->sem);
}
for (i = 0; i < migrate_multifd_channels(); i++) {