qemu/include/hw
Michael S. Tsirkin 6b4495401b pcie: fix link active status bit migration
We changed link status register in pci express endpoint capability
over time. Specifically,

commit b2101eae63 ("pcie: Set the "link
active" in the link status register") set data link layer link active
bit in this register without adding compatibility to old machine types.

When migrating from qemu 2.3 and older this affects xhci devices which
under machine type 2.0 and older have a pci express endpoint capability
even if they are on a pci bus.

Add compatibility flags to make this bit value match what it was under
2.3.

Additionally, to avoid breaking migration from qemu 2.3 and up,
suppress checking link status during migration: this seems sane
since hardware can change link status at any time.

https://bugzilla.redhat.com/show_bug.cgi?id=1352860

Reported-by: Gerd Hoffmann <kraxel@redhat.com>
Fixes: b2101eae63
    ("pcie: Set the "link active" in the link status register")
Cc: qemu-stable@nongnu.org
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2016-07-29 00:07:08 +03:00
..
acpi acpi: add DMAR scope definition for root IOAPIC 2016-07-20 19:30:27 +03:00
arm Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
audio Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
block block/qdev: Allow configuring rerror/werror with qdev properties 2016-07-13 13:32:27 +02:00
char Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
cpu qapi: keep names in 'CpuInstanceProperties' in sync with struct CPUCore 2016-06-27 13:15:06 +10:00
cris Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
display Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
dma Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
gpio Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
i2c Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
i386 pc, pci, virtio: new features, cleanups, fixes 2016-07-21 20:12:37 +01:00
ide Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
input Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
intc gic: provide defines for v2/v3 targetlist sizes 2016-07-14 16:51:37 +01:00
ipack ipack: Update e-mail address 2016-05-18 15:04:27 +03:00
ipmi ipmi: rework the fwinfo to be fetched from the interface 2016-06-07 15:36:54 +03:00
isa Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
kvm
lm32 hmp: Name HMP info handler functions hmp_info_SUBCOMMAND() 2015-02-18 11:58:50 +01:00
m68k m68k: include cpu-qom.h in files that require M68KCPU 2016-05-19 16:42:27 +02:00
mem nvdimm: support nvdimm label 2016-06-24 05:13:57 +03:00
mips hw/mips/cps: create GIC block inside CPS 2016-07-12 09:10:13 +01:00
misc ast2400: externalize revision numbers 2016-07-14 16:51:39 +01:00
net Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
nvram * Updated fw_cfg option ROM to include DMA support 2016-07-14 16:49:18 +01:00
pci pcie: fix link active status bit migration 2016-07-29 00:07:08 +03:00
pci-host acpi: add DMAR scope definition for root IOAPIC 2016-07-20 19:30:27 +03:00
ppc Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
s390x s390x/css: provide a dev_path for css devices 2016-07-20 15:47:25 +02:00
scsi scsi-bus: Use longer sense buffer with scanners 2016-07-12 18:31:26 +02:00
sd Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
sh4 Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
smbios Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
sparc Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
ssi Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
timer Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
tricore Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
unicore32 Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
usb Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
vfio Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
virtio virtio-gpu: Use migrate_add_blocker for virgl migration blocking 2016-07-21 20:44:20 +03:00
watchdog Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
xen Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
boards.h machine: Add machine_register_compat_props() function 2016-07-07 15:24:54 -03:00
bt.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
compat.h pcie: fix link active status bit migration 2016-07-29 00:07:08 +03:00
devices.h arm: fix location of some include files 2013-04-15 15:16:01 +02:00
elf_ops.h loader: Add data swap option to load-elf 2016-03-04 11:30:21 +00:00
empty_slot.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
fw-path-provider.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
hotplug.h qdev: hotplug: Introduce HotplugHandler.pre_plug() callback 2016-06-17 16:33:48 +10:00
hw.h hw: clean up hw/hw.h includes 2016-05-19 16:42:30 +02:00
ide.h Call pci_piix3_xen_ide_unplug from unplug_disks 2014-02-20 17:28:08 +00:00
irq.h irq: Remove qemu_irq_intercept_out 2014-10-23 16:41:25 +02:00
loader.h Sort the fw_cfg file list 2016-04-07 19:57:33 +03:00
nmi.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
pcmcia.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
platform-bus.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
ptimer.h hw/ptimer: Introduce ptimer_get_limit 2016-06-06 16:59:31 +01:00
qdev-core.h qdev: GlobalProperty.errp field 2016-07-07 15:24:52 -03:00
qdev-dma.h qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
qdev-properties.h block/qdev: Allow configuring rerror/werror with qdev properties 2016-07-13 13:32:27 +02:00
qdev.h
register.h register: Add block initialise helper 2016-07-04 13:15:22 +01:00
stream.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
sysbus.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
usb.h usb: Add QOM property "attached". 2016-06-22 12:53:26 +02:00