diff options
author | Igor Mammedov | 2017-09-13 18:04:54 +0200 |
---|---|---|
committer | Eduardo Habkost | 2017-09-19 14:09:32 +0200 |
commit | 4482e05cbbb7e50e476f6a9500cf0b38913bd939 (patch) | |
tree | c2135cfd57c8f7fe0c50ddf19e43e98479383c08 /hw/sparc | |
parent | qom: cpus: split cpu_generic_init() on feature parsing and cpu creation parts (diff) | |
download | qemu-4482e05cbbb7e50e476f6a9500cf0b38913bd939.tar.gz qemu-4482e05cbbb7e50e476f6a9500cf0b38913bd939.tar.xz qemu-4482e05cbbb7e50e476f6a9500cf0b38913bd939.zip |
cpu: make cpu_generic_init() abort QEMU on error
Almost every user of cpu_generic_init() checks for
returned NULL and then reports failure in a custom way
and aborts process.
Some users assume that call can't fail and don't check
for failure, though they should have checked for it.
In either cases cpu_generic_init() failure is fatal,
so instead of checking for failure and reporting
it various ways, make cpu_generic_init() report
errors in consistent way and terminate QEMU on failure.
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <1505318697-77161-3-git-send-email-imammedo@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'hw/sparc')
-rw-r--r-- | hw/sparc/leon3.c | 4 | ||||
-rw-r--r-- | hw/sparc/sun4m.c | 4 |
2 files changed, 0 insertions, 8 deletions
diff --git a/hw/sparc/leon3.c b/hw/sparc/leon3.c index 56512ecd00..ec2816bf94 100644 --- a/hw/sparc/leon3.c +++ b/hw/sparc/leon3.c @@ -127,10 +127,6 @@ static void leon3_generic_hw_init(MachineState *machine) } cpu = SPARC_CPU(cpu_generic_init(TYPE_SPARC_CPU, cpu_model)); - if (cpu == NULL) { - fprintf(stderr, "qemu: Unable to find Sparc CPU definition\n"); - exit(1); - } env = &cpu->env; cpu_sparc_set_id(env, 0); diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c index cf47dca83a..e1bdd4828d 100644 --- a/hw/sparc/sun4m.c +++ b/hw/sparc/sun4m.c @@ -798,10 +798,6 @@ static void cpu_devinit(const char *cpu_model, unsigned int id, CPUSPARCState *env; cpu = SPARC_CPU(cpu_generic_init(TYPE_SPARC_CPU, cpu_model)); - if (cpu == NULL) { - fprintf(stderr, "qemu: Unable to find Sparc CPU definition\n"); - exit(1); - } env = &cpu->env; cpu_sparc_set_id(env, id); |