summaryrefslogtreecommitdiff
path: root/hw/ide/qdev.c
diff options
context:
space:
mode:
authorAnthony Liguori <aliguori@us.ibm.com>2013-02-26 07:44:39 -0600
committerAnthony Liguori <aliguori@us.ibm.com>2013-02-26 07:44:39 -0600
commit864a556e9a800116a305f10fbb714268ca7e9bc3 (patch)
treec9e5fdc33d2a1be16446c7504106b4f128e3d0cd /hw/ide/qdev.c
parent9a1d7f00efd4b69f051d4223a70ca91af0ccb19d (diff)
parentbf3caa3dc17552b323cec6831301a22cfc98ecd5 (diff)
downloadqemu-864a556e9a800116a305f10fbb714268ca7e9bc3.tar.gz
Merge remote-tracking branch 'kwolf/for-anthony' into staging
# By Paolo Bonzini (7) and others # Via Kevin Wolf * kwolf/for-anthony: (22 commits) pc: add compatibility machine types for 1.4 blockdev: enable discard by default qemu-nbd: add --discard option blockdev: add discard suboption to -drive block: implement BDRV_O_UNMAP block: complete all IOs before .bdrv_truncate coroutine: trim down nesting level in perf_nesting test coroutine: move pooling to common code qemu-iotests: Test qcow2 image creation options qemu-iotests: Add qemu-img compare test qemu-img: Add compare subcommand qemu-img: Add "Quiet mode" option block: Add synchronous wrapper for bdrv_co_is_allocated_above block: refuse negative iops and bps values block: use Error in do_check_io_limits() qcow2: support compressed clusters in BlockFragInfo qemu-img: add compressed clusters to BlockFragInfo qemu-img: fix missing space in qemu-img check output qcow2: record fragmentation statistics during check qcow2: introduce check_refcounts_l1/l2() flags ...
Diffstat (limited to 'hw/ide/qdev.c')
-rw-r--r--hw/ide/qdev.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/hw/ide/qdev.c b/hw/ide/qdev.c
index c436b38bcb..fd06da7003 100644
--- a/hw/ide/qdev.c
+++ b/hw/ide/qdev.c
@@ -143,7 +143,10 @@ static int ide_dev_initfn(IDEDevice *dev, IDEDriveKind kind)
IDEBus *bus = DO_UPCAST(IDEBus, qbus, dev->qdev.parent_bus);
IDEState *s = bus->ifs + dev->unit;
- if (dev->conf.discard_granularity && dev->conf.discard_granularity != 512) {
+ if (dev->conf.discard_granularity == -1) {
+ dev->conf.discard_granularity = 512;
+ } else if (dev->conf.discard_granularity &&
+ dev->conf.discard_granularity != 512) {
error_report("discard_granularity must be 512 for ide");
return -1;
}