qemu-e2k/hw/ide
John Snow 01ce352e62 ide: Add resize callback to ide/core
Currently, if the block device backing the IDE drive is resized,
the information about the device as cached inside of the IDEState
structure is not updated, thus when a guest OS re-queries the drive,
it is unable to see the expanded size.

This patch adds a resize callback that updates the IDENTIFY data
buffer in order to correct this.

Lastly, a Linux guest as-is cannot resize a libata drive while in-use,
but it can see the expanded size as part of a bus rescan event.
This patch also allows guests such as Linux to see the new drive size
after a soft reboot event, without having to exit the QEMU process.

Signed-off-by: John Snow <jsnow@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2014-09-08 11:12:44 +01:00
..
ahci.c block: Use g_new() & friends where that makes obvious sense 2014-08-20 11:51:28 +02:00
ahci.h ahci: remove duplicate PORT_IRQ_* constants 2014-08-15 18:03:12 +01:00
atapi.c ide: make all commands go through cmd_done 2014-08-15 18:03:12 +01:00
cmd646.c SCSI changes that enable sending vendor-specific commands via virtio-scsi. 2014-08-19 13:00:57 +01:00
core.c ide: Add resize callback to ide/core 2014-09-08 11:12:44 +01:00
ich.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
internal.h ide: make all commands go through cmd_done 2014-08-15 18:03:12 +01:00
isa.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
macio.c ide: fold add_status callback into set_inactive 2014-08-15 18:03:12 +01:00
Makefile.objs
microdrive.c block: Drop some superfluous casts from void * 2014-08-20 11:51:28 +02:00
mmio.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
pci.c ide: move retry constants out of BM_STATUS_* namespace 2014-08-15 18:03:12 +01:00
pci.h ide: move BM_STATUS bits to pci.[ch] 2014-08-15 18:03:12 +01:00
piix.c memory: remove memory_region_destroy 2014-08-18 12:06:21 +02:00
qdev.c ide: Fix bootindex for bus_id > 9 2014-08-29 10:46:57 +01:00
via.c memory: remove memory_region_destroy 2014-08-18 12:06:21 +02:00