qemu-e2k/hw
Marcel Apfelbaum 306077640a hw/pci: fix error flow in pci multifunction init
Scenario:
  - There is a non multifunction pci device A on 00:0X.0.
  - Hot-plug another multifunction pci device B at 00:0X.1.
  - The operation will fail of course.
  - Try to hot-plug the B device 2-3 more times, qemu will crash.

Reason: The error flow leaves the B's address space into global address spaces
list, but the device object is freed. Fixed that.

Signed-off-by: Marcel Apfelbaum <marcel.a@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2014-01-26 13:11:45 +02:00
..
9pfs virtio-9p: Convert to QOM realize 2013-12-09 21:46:49 +01:00
acpi pc: ACPI: unify source of CPU hotplug IO base/len 2014-01-26 13:11:44 +02:00
alpha sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
arm QOM infrastructure fixes and device conversions 2014-01-09 11:24:48 -08:00
audio hda-codec: disable streams on reset 2014-01-20 12:17:20 +01:00
block block: rename buffer_alignment to guest_block_size 2014-01-24 17:40:01 +01:00
bt Preparation for usb-bt-dongle conditional build 2013-09-10 11:14:41 +02:00
char Merge remote-tracking branch 'mjt/trivial-patches' into staging 2014-01-09 11:24:12 -08:00
core Merge remote branch 'luiz/queue/qmp' into qmpq 2014-01-14 12:10:08 +10:00
cpu icc_bus: QOM'ify ICC 2013-12-24 18:02:18 +01:00
cris axis_dev88: Don't enforce use of kernel for qtest 2013-11-05 17:47:29 +01:00
display sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
dma Merge remote branch 'luiz/queue/qmp' into qmpq 2014-01-14 12:10:08 +10:00
gpio hw: cannot_instantiate_with_device_add_yet due to pointer props 2013-12-24 17:27:17 +01:00
i2c hw: cannot_instantiate_with_device_add_yet due to pointer props 2013-12-24 17:27:17 +01:00
i386 pc: ACPI: update acpi-dsdt.hex.generated q35-acpi-dsdt.hex.generated 2014-01-26 13:11:44 +02:00
ide block: rename buffer_alignment to guest_block_size 2014-01-24 17:40:01 +01:00
input QOM infrastructure fixes and device conversions 2014-01-09 11:24:48 -08:00
intc QOM infrastructure fixes and device conversions 2014-01-09 11:24:48 -08:00
isa vt82c686: Clean up use of cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
lm32 milkymist: Suppress -kernel/-bios/-drive error for qtest 2013-11-05 17:47:29 +01:00
m68k an5206: Don't enforce use of kernel for qtest 2013-11-05 17:47:29 +01:00
microblaze Microblaze: Convert Microblaze-pic handling to GPIOs 2014-01-14 11:08:36 +10:00
mips pci-host: Consistently set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
misc Add DSDT node for AppleSMC 2014-01-26 13:06:48 +02:00
moxie memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
net virtio: Fix return value for dummy function vhost_net_virtqueue_pending 2014-01-26 13:06:48 +02:00
nvram sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
openrisc openrisc-timer: Reduce overhead, Separate clock update functions 2013-11-20 21:46:45 +08:00
pci hw/pci: fix error flow in pci multifunction init 2014-01-26 13:11:45 +02:00
pci-bridge pci-host: Consistently set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
pci-host acpi,pci,pc,fedora,virtio fixes and enhancements 2014-01-10 11:04:48 -08:00
pcmcia pcmcia/pxa2xx: QOM'ify PXA2xxPCMCIAState 2013-11-05 18:06:52 +01:00
ppc pci-host: Consistently set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
s390x acpi,pci,pc,fedora,virtio fixes and enhancements 2014-01-10 11:04:48 -08:00
scsi Merge remote-tracking branch 'bonzini/scsi-next' into staging 2014-01-24 15:50:14 -08:00
sd sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
sh4 pci-host: Consistently set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
sparc sun4m: Add FCode ROM for TCX framebuffer 2013-11-21 17:38:52 +01:00
sparc64 pc,pci,virtio fixes and cleanups 2013-09-03 12:31:07 -05:00
ssi xilinx_spi: QOM cast cleanup 2013-07-29 21:07:01 +02:00
timer isa: Clean up use of cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
tpm aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
unicore32 puv3: Turn puv3_load_kernel() into a no-op for qtest without -kernel 2013-11-05 17:47:28 +01:00
usb usb-hid: add microsoft os descriptor support 2014-01-16 12:59:59 +01:00
virtio dataplane: fix shadowed return value 2014-01-22 13:48:18 +01:00
watchdog qemu-option: Remove qemu_opts_create_nofail 2014-01-06 15:02:30 -05:00
xen apic: QOM'ify APIC 2013-12-24 18:02:18 +01:00
xtensa pc,pci,virtio fixes and cleanups 2013-09-03 12:31:07 -05:00
Makefile.objs pcmcia: QOM'ify PCMCIACardState and MicroDriveState 2013-11-05 18:06:52 +01:00