qemu-patch-raspberry4/hw/ide
Marcelo Tosatti 42ee76fe82 ide save/restore current transfer fields
If migration takes place between write of the bmdma address register and
write of the command register (to initiate DMA), the destination will
not properly start the DMA op, hanging the guest:

ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
ata1.00: cmd c8/00:16:41:00:00/00:00:00:00:00/e0 tag 0 dma 11264 in
         res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
ata1.00: status: { DRDY }

Fix by sending current transfer information in the migration data.

We need to update ide version to 4 for this to work.  As we don't
have subsectios, we need to chain the update increase until
vmstate_ide_pci (quintela)

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2010-01-26 15:42:02 -06:00
..
cmd646.c cmd646: symbolic names for pci registers 2009-12-23 16:35:00 +02:00
core.c ide: device version property 2010-01-19 16:31:04 -06:00
internal.h ide: device version property 2010-01-19 16:31:04 -06:00
isa.c IDE: Fix reset handling 2009-11-07 14:13:05 +00:00
macio.c IDE: Fix reset handling 2009-11-07 14:13:05 +00:00
microdrive.c Add "static" to please Sparse 2009-12-04 20:44:44 +00:00
mmio.c IDE: Fix reset handling 2009-11-07 14:13:05 +00:00
pci.c ide save/restore current transfer fields 2010-01-26 15:42:02 -06:00
pci.h ide: port pci ide to vmstate 2009-10-27 12:28:46 -05:00
piix.c piix: symbolic constants 2009-12-23 16:35:00 +02:00
qdev.c ide: device version property 2010-01-19 16:31:04 -06:00