Patchwork [15/17] ide: Reject readonly drives unless CD-ROM

login
register
mail settings
Submitter Kevin Wolf
Date July 6, 2010, 3:33 p.m.
Message ID <1278430406-18667-16-git-send-email-kwolf@redhat.com>
Download mbox | patch
Permalink /patch/58043/
State New
Headers show

Comments

Kevin Wolf - July 6, 2010, 3:33 p.m.
From: Markus Armbruster <armbru@redhat.com>

drive_init() doesn't permit option readonly for if=ide, but that's
worthless: we get it via if=none and -device.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
---
 hw/ide/core.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

Patch

diff --git a/hw/ide/core.c b/hw/ide/core.c
index dbb7acc..3b84bea 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -2617,6 +2617,11 @@  int ide_init_drive(IDEState *s, BlockDriverState *bs,
     if (bdrv_get_type_hint(bs) == BDRV_TYPE_CDROM) {
         s->drive_kind = IDE_CD;
         bdrv_set_change_cb(bs, cdrom_change_cb, s);
+    } else {
+        if (bdrv_is_read_only(bs)) {
+            error_report("Can't use a read-only drive");
+            return -1;
+        }
     }
     if (serial) {
         strncpy(s->drive_serial_str, serial, sizeof(s->drive_serial_str));