summary refs log tree commit diff stats
path: root/contrib/plugins/lockstep.c
diff options
context:
space:
mode:
authorAlex Bennée <alex.bennee@linaro.org>2024-07-05 09:40:33 +0100
committerAlex Bennée <alex.bennee@linaro.org>2024-07-05 12:34:48 +0100
commit3b8550c955ccd0a31667414d69a469bfdb7a56ff (patch)
tree4703d324fb9833542de145585203b5fb3b57cf77 /contrib/plugins/lockstep.c
parent13167b5fe93c2faa91aa08f91353b066423b5ec3 (diff)
downloadfocaccia-qemu-3b8550c955ccd0a31667414d69a469bfdb7a56ff.tar.gz
focaccia-qemu-3b8550c955ccd0a31667414d69a469bfdb7a56ff.zip
plugins/lockstep: clean-up output
We were repeating information which wasn't super clear. As we already
will have dumped the last failing PC just note the divergence and dump
the previous instruction log.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240705084047.857176-27-alex.bennee@linaro.org>
Diffstat (limited to 'contrib/plugins/lockstep.c')
-rw-r--r--contrib/plugins/lockstep.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index 1765fd6c36..6a7e9bbb39 100644
--- a/contrib/plugins/lockstep.c
+++ b/contrib/plugins/lockstep.c
@@ -135,10 +135,13 @@ static void report_divergance(ExecState *us, ExecState *them)
 
     /* Output short log entry of going out of sync... */
     if (verbose || divrec.distance == 1 || diverged) {
-        g_string_printf(out,
-                        "@ 0x%016" PRIx64 " vs 0x%016" PRIx64
+        g_string_printf(out, "@ "
+                        "0x%016" PRIx64 " (%" PRId64 ") vs "
+                        "0x%016" PRIx64 " (%" PRId64 ")"
                         " (%d/%d since last)\n",
-                        us->pc, them->pc, g_slist_length(divergence_log),
+                        us->pc, us->insn_count,
+                        them->pc, them->insn_count,
+                        g_slist_length(divergence_log),
                         divrec.distance);
         qemu_plugin_outs(out->str);
     }
@@ -147,10 +150,7 @@ static void report_divergance(ExecState *us, ExecState *them)
         int i;
         GSList *entry;
 
-        g_string_printf(out,
-                        "Δ insn_count @ 0x%016" PRIx64
-                        " (%"PRId64") vs 0x%016" PRIx64 " (%"PRId64")\n",
-                        us->pc, us->insn_count, them->pc, them->insn_count);
+        g_string_printf(out, "Δ too high, we have diverged, previous insns\n");
 
         for (entry = log, i = 0;
              g_slist_next(entry) && i < 5;
@@ -163,7 +163,7 @@ static void report_divergance(ExecState *us, ExecState *them)
                                    prev->insn_count);
         }
         qemu_plugin_outs(out->str);
-        qemu_plugin_outs("too much divergence... giving up.");
+        qemu_plugin_outs("giving up\n");
         qemu_plugin_uninstall(our_id, plugin_cleanup);
     }
 }