diff options
author | Thomas Huth <thuth@redhat.com> | 2017-01-13 13:12:35 +0100 |
---|---|---|
committer | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2017-02-21 18:29:01 +0000 |
commit | 854e67fea6a6f181163a5467fc9ba04de8d181bb (patch) | |
tree | 95528d10774a6b5021083310dee65c7bbe376274 /target/ppc/monitor.c | |
parent | 5fc00480ab1ce767f1c6c63ae644e960295fed2c (diff) | |
download | qemu-854e67fea6a6f181163a5467fc9ba04de8d181bb.zip |
monitor: Fix crashes when using HMP commands without CPU
When running certain HMP commands ("info registers", "info cpustats",
"info tlb", "nmi", "memsave" or dumping virtual memory) with the "none"
machine, QEMU crashes with a segmentation fault. This happens because the
"none" machine does not have any CPUs by default, but these HMP commands
did not check for a valid CPU pointer yet. Add such checks now, so we get
an error message about the missing CPU instead.
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <1484309555-1935-1-git-send-email-thuth@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Diffstat (limited to 'target/ppc/monitor.c')
-rw-r--r-- | target/ppc/monitor.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/target/ppc/monitor.c b/target/ppc/monitor.c index c2d0806dd1..b8f30e9eaf 100644 --- a/target/ppc/monitor.c +++ b/target/ppc/monitor.c @@ -62,6 +62,10 @@ void hmp_info_tlb(Monitor *mon, const QDict *qdict) { CPUArchState *env1 = mon_get_cpu_env(); + if (!env1) { + monitor_printf(mon, "No CPU available\n"); + return; + } dump_mmu((FILE*)mon, (fprintf_function)monitor_printf, env1); } |