From 94b665813b1b974d8a9c51846bd30fe934c7a3c6 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Thu, 23 Jun 2011 12:40:48 -0300
Subject: [RHEL6 qemu-kvm PATCH 015/115] scsi-disk: fix build, disable cdrom emulation.

RH-Author: Gerd Hoffmann <kraxel@redhat.com>
Message-id: <1308832951-8995-13-git-send-email-kraxel@redhat.com>
Patchwork-id: 27860
O-Subject: [RHEL-6.2 kvm PATCH 012/115] scsi-disk: fix build, disable cdrom emulation.
Bugzilla: 561414 632299 645351 711354
RH-Acked-by: Hans de Goede <hdegoede@redhat.com>
RH-Acked-by: Jes Sorensen <Jes.Sorensen@redhat.com>
RH-Acked-by: Paolo Bonzini <pbonzini@redhat.com>
RH-Acked-by: Kevin Wolf <kwolf@redhat.com>

scsi-disk has bitrotted a bit and doesn't build any more.  Fix it.
Disable cdrom emulation as we want support usb sticks only.

RHEL-only patch.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/scsi-disk.c |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
 hw/scsi-disk.c |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/hw/scsi-disk.c b/hw/scsi-disk.c
index 55b4e9f..b93ec17 100644
--- a/hw/scsi-disk.c
+++ b/hw/scsi-disk.c
@@ -358,8 +358,7 @@ static int scsi_disk_emulate_inquiry(SCSIRequest *req, uint8_t *outbuf)
 
         case 0x80: /* Device serial number, optional */
         {
-            const char *serial = req->dev->conf.dinfo->serial ?
-                req->dev->conf.dinfo->serial : "0";
+            const char *serial = drive_get_serial(s->bs);
             int l = strlen(serial);
 
             if (l > req->cmd.xfer)
@@ -1031,7 +1030,8 @@ static int scsi_disk_initfn(SCSIDevice *dev)
     s->bs = s->qdev.conf.bs;
 
     if (bdrv_get_type_hint(s->bs) == BDRV_TYPE_CDROM) {
-        s->qdev.blocksize = 2048;
+        error_report("scsi-disk: cdrom emulation is not supported");
+        return -1;
     } else {
         s->qdev.blocksize = s->qdev.conf.logical_block_size;
     }
@@ -1045,7 +1045,6 @@ static int scsi_disk_initfn(SCSIDevice *dev)
         nb_sectors--;
     s->max_lba = nb_sectors;
     qemu_add_vm_change_state_handler(scsi_dma_restart_cb, s);
-    bdrv_set_removable(s->bs, is_cd);
     add_boot_device_path(s->qdev.conf.bootindex, &dev->qdev, ",0");
     return 0;
 }
-- 
1.7.3.2

