diff options
author | Isaku Yamahata <yamahata@valinux.co.jp> | 2010-08-04 17:43:20 +0900 |
---|---|---|
committer | Blue Swirl <blauwirbel@gmail.com> | 2010-08-28 08:50:40 +0000 |
commit | 02a89b219039621c940863aa5a9da4fec81a1546 (patch) | |
tree | 8d85bd478df1e828f4e73eaca7b01d166d825724 | |
parent | 95c318f5e1f88d7e5bcc6deac17330fd4806a2d3 (diff) |
isapc: fix segfault.
https://bugs.launchpad.net/bugs/611646
reports that ./i386-softmmu/qemu -M isapc segfaults.
This patch fixes the segfault introduced by
f885f1eaa8711c06033ceb1599e3750fb37c306f
It's because i440fx_state in pc_init1() isn't initialized.
> Core was generated by `./i386-softmmu/qemu -M isapc'.
> Program terminated with signal 11, Segmentation fault.
> [New process 19686]
> at qemu/hw/piix_pci.c:136
> (gdb) where
> at qemu/hw/piix_pci.c:136
> boot_device=0x7fffe1f5b040 "cad", kernel_filename=0x0,
> kernel_cmdline=0x6469bf "", initrd_filename=0x0,
> cpu_model=0x654d10 "486", pci_enabled=0)
> at qemu/hw/pc_piix.c:178
> boot_device=0x7fffe1f5b040 "cad", kernel_filename=0x0,
> kernel_cmdline=0x6469bf "", initrd_filename=0x0, cpu_model=0x654d10 "486")
> at qemu/hw/pc_piix.c:207
> envp=0x7fffe1f5b188)
> at qemu/vl.c:2871
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
-rw-r--r-- | hw/pc_piix.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/pc_piix.c b/hw/pc_piix.c index 32a105736d..12359a75c9 100644 --- a/hw/pc_piix.c +++ b/hw/pc_piix.c @@ -104,6 +104,7 @@ static void pc_init1(ram_addr_t ram_size, pci_bus = i440fx_init(&i440fx_state, &piix3_devfn, isa_irq, ram_size); } else { pci_bus = NULL; + i440fx_state = NULL; isa_bus_new(NULL); } isa_bus_irqs(isa_irq); |