"Maciej S. Szmigiero" <m...@maciej.szmigiero.name> writes: > From: "Maciej S. Szmigiero" <maciej.szmigi...@oracle.com> > > There's a RAM load complete trace event but there wasn't its start equivalent. > > Signed-off-by: Maciej S. Szmigiero <maciej.szmigi...@oracle.com> > --- > migration/ram.c | 1 + > migration/trace-events | 1 + > 2 files changed, 2 insertions(+) > > diff --git a/migration/ram.c b/migration/ram.c > index 67ca3d5d51a1..7997bd830b9c 100644 > --- a/migration/ram.c > +++ b/migration/ram.c > @@ -4127,6 +4127,7 @@ static int ram_load_precopy(QEMUFile *f) > RAM_SAVE_FLAG_ZERO); > } > > + trace_ram_load_start();
This would fit better at ram_load() paired with trace_ram_load_complete(), no? > while (!ret && !(flags & RAM_SAVE_FLAG_EOS)) { > ram_addr_t addr; > void *host = NULL, *host_bak = NULL; > diff --git a/migration/trace-events b/migration/trace-events > index c65902f042bd..2a99a7baaea6 100644 > --- a/migration/trace-events > +++ b/migration/trace-events > @@ -115,6 +115,7 @@ colo_flush_ram_cache_end(void) "" > save_xbzrle_page_skipping(void) "" > save_xbzrle_page_overflow(void) "" > ram_save_iterate_big_wait(uint64_t milliconds, int iterations) "big wait: %" > PRIu64 " milliseconds, %d iterations" > +ram_load_start(void) "" > ram_load_complete(int ret, uint64_t seq_iter) "exit_code %d seq iteration %" > PRIu64 > ram_write_tracking_ramblock_start(const char *block_id, size_t page_size, > void *addr, size_t length) "%s: page_size: %zu addr: %p length: %zu" > ram_write_tracking_ramblock_stop(const char *block_id, size_t page_size, > void *addr, size_t length) "%s: page_size: %zu addr: %p length: %zu"