diff options
author | Juan Quintela | 2019-08-14 04:02:17 +0200 |
---|---|---|
committer | Dr. David Alan Gilbert | 2019-08-14 18:33:14 +0200 |
commit | 7dd59d01ddcc4a4ba0c44c2cc9e3b35c79aa7a29 (patch) | |
tree | 663cc66433b1b4cee320a736fb4a454009bf16fe /migration | |
parent | migration: Make global sem_sync semaphore by channel (diff) | |
download | qemu-7dd59d01ddcc4a4ba0c44c2cc9e3b35c79aa7a29.tar.gz qemu-7dd59d01ddcc4a4ba0c44c2cc9e3b35c79aa7a29.tar.xz qemu-7dd59d01ddcc4a4ba0c44c2cc9e3b35c79aa7a29.zip |
migration: add some multifd traces
Signed-off-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20190814020218.1868-6-quintela@redhat.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Diffstat (limited to 'migration')
-rw-r--r-- | migration/ram.c | 3 | ||||
-rw-r--r-- | migration/trace-events | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/migration/ram.c b/migration/ram.c index c7aa3d9a2c..35552c090b 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -1170,6 +1170,7 @@ static void *multifd_send_thread(void *opaque) out: if (local_err) { + trace_multifd_send_error(p->id); multifd_send_terminate_threads(local_err); } @@ -1200,6 +1201,7 @@ static void multifd_new_send_channel_async(QIOTask *task, gpointer opaque) QIOChannel *sioc = QIO_CHANNEL(qio_task_get_source(task)); Error *local_err = NULL; + trace_multifd_new_send_channel_async(p->id); if (qio_task_propagate_error(task, &local_err)) { migrate_set_error(migrate_get_current(), local_err); multifd_save_cleanup(); @@ -1486,6 +1488,7 @@ bool multifd_recv_new_channel(QIOChannel *ioc, Error **errp) atomic_read(&multifd_recv_state->count)); return false; } + trace_multifd_recv_new_channel(id); p = &multifd_recv_state->params[id]; if (p->c != NULL) { diff --git a/migration/trace-events b/migration/trace-events index 886ce70ca0..00ffcd5930 100644 --- a/migration/trace-events +++ b/migration/trace-events @@ -81,14 +81,18 @@ migration_bitmap_sync_start(void) "" migration_bitmap_sync_end(uint64_t dirty_pages) "dirty_pages %" PRIu64 migration_bitmap_clear_dirty(char *str, uint64_t start, uint64_t size, unsigned long page) "rb %s start 0x%"PRIx64" size 0x%"PRIx64" page 0x%lx" migration_throttle(void) "" +multifd_new_send_channel_async(uint8_t id) "channel %d" multifd_recv(uint8_t id, uint64_t packet_num, uint32_t used, uint32_t flags, uint32_t next_packet_size) "channel %d packet_num %" PRIu64 " pages %d flags 0x%x next packet size %d" +multifd_recv_new_channel(uint8_t id) "channel %d" multifd_recv_sync_main(long packet_num) "packet num %ld" multifd_recv_sync_main_signal(uint8_t id) "channel %d" multifd_recv_sync_main_wait(uint8_t id) "channel %d" multifd_recv_terminate_threads(bool error) "error %d" multifd_recv_thread_end(uint8_t id, uint64_t packets, uint64_t pages) "channel %d packets %" PRIu64 " pages %" PRIu64 multifd_recv_thread_start(uint8_t id) "%d" +multifd_save_setup_wait(uint8_t id) "%d" multifd_send(uint8_t id, uint64_t packet_num, uint32_t used, uint32_t flags, uint32_t next_packet_size) "channel %d packet_num %" PRIu64 " pages %d flags 0x%x next packet size %d" +multifd_send_error(uint8_t id) "channel %d" multifd_send_sync_main(long packet_num) "packet num %ld" multifd_send_sync_main_signal(uint8_t id) "channel %d" multifd_send_sync_main_wait(uint8_t id) "channel %d" |