aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorPavel Hrdina <phrdina@redhat.com>2013-05-20 13:06:47 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2013-06-18 12:43:03 +0200
commit7721c7f7c272fd2ed9d58500b7e99c33ab8a1af1 (patch)
tree0d516dd20baaf950cf01119d64a5e568fa0fcb85 /hw
parentafd59989db90683fa127fec501d2633bcfbd6379 (diff)
downloadqemu-7721c7f7c272fd2ed9d58500b7e99c33ab8a1af1.zip
qemu-7721c7f7c272fd2ed9d58500b7e99c33ab8a1af1.tar.gz
qemu-7721c7f7c272fd2ed9d58500b7e99c33ab8a1af1.tar.bz2
scsi: reset cdrom tray statuses on scsi_disk_reset
Tray statuses should be also reset. Some guests may lock the tray and right after resetting the guest it should be unlocked and closed. This is done on power-on, reset and resume from suspend/hibernate on bare-metal. This fix is already committed for IDE CD. Check the commit a7f3d65b65b8c86a5ff0c0abcfefb45e2ec6fe4c. Test results on bare-metal: - on reset/power-on the CD-ROM tray is closed even before the monitor is turned on - on resume from suspend/hibernate the tray is also closed before the monitor is turned on From test results it seems that this behavior is OS and probably BIOS independent. Cc: qemu-stable@nongnu.org Signed-off-by: Pavel Hrdina <phrdina@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/scsi/scsi-disk.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c
index c8d2a99..02733dc 100644
--- a/hw/scsi/scsi-disk.c
+++ b/hw/scsi/scsi-disk.c
@@ -1984,6 +1984,9 @@ static void scsi_disk_reset(DeviceState *dev)
nb_sectors--;
}
s->qdev.max_lba = nb_sectors;
+ /* reset tray statuses */
+ s->tray_locked = 0;
+ s->tray_open = 0;
}
static void scsi_destroy(SCSIDevice *dev)