Received: from eggs.gnu.org ([2001:4830:134:3::10]:56756) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVguw-0005Qy-8w for qemu-devel@nongnu.org; Wed, 11 Mar 2015 09:43:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YVgur-0005eT-TU for qemu-devel@nongnu.org; Wed, 11 Mar 2015 09:43:22 -0400 Received: from mx1.redhat.com ([209.132.183.28]:48503) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVgur-0005eH-LJ for qemu-devel@nongnu.org; Wed, 11 Mar 2015 09:43:17 -0400 Date: Wed, 11 Mar 2015 14:43:11 +0100 From: "Michael S. Tsirkin" Message-ID: <20150311144311-mutt-send-email-mst@redhat.com> References: <1426081233-7801-1-git-send-email-mst@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1426081233-7801-1-git-send-email-mst@redhat.com> Subject: [Qemu-devel] [PATCH 4/4] virtio-scsi: clean out duplicate cdb field List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Alexey Kardashevskiy , Paolo Bonzini , Fam Zheng , Nikunj A Dadhania cdb is now part of cmd, drop it from req. There's also nothing to check using build assert now. Signed-off-by: Michael S. Tsirkin --- include/hw/virtio/virtio-scsi.h | 7 +------ hw/scsi/virtio-scsi.c | 2 +- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/include/hw/virtio/virtio-scsi.h b/include/hw/virtio/virtio-scsi.h index 9423865..e3f27a6 100644 --- a/include/hw/virtio/virtio-scsi.h +++ b/include/hw/virtio/virtio-scsi.h @@ -109,8 +109,7 @@ typedef struct VirtIOSCSIReq { /* Note: * - fields before elem are initialized by virtio_scsi_init_req; * - elem is uninitialized at the time of allocation. - * - fields after elem (except the ending cdb[]) are zeroed by - * virtio_scsi_init_req. + * - fields after elem are zeroed by virtio_scsi_init_req. * */ VirtQueueElement elem; @@ -137,16 +136,12 @@ typedef struct VirtIOSCSIReq { union { struct { VirtIOSCSICmdReq cmd; - uint8_t cdb[]; } QEMU_PACKED; VirtIOSCSICtrlTMFReq tmf; VirtIOSCSICtrlANReq an; } req; } VirtIOSCSIReq; -QEMU_BUILD_BUG_ON(offsetof(VirtIOSCSIReq, req.cdb) != - offsetof(VirtIOSCSIReq, req.cmd) + sizeof(VirtIOSCSICmdReq)); - #define DEFINE_VIRTIO_SCSI_PROPERTIES(_state, _conf_field) \ DEFINE_PROP_UINT32("num_queues", _state, _conf_field.num_queues, 1), \ DEFINE_PROP_UINT32("max_sectors", _state, _conf_field.max_sectors, 0xFFFF),\ diff --git a/hw/scsi/virtio-scsi.c b/hw/scsi/virtio-scsi.c index ba51e06..da0cff8 100644 --- a/hw/scsi/virtio-scsi.c +++ b/hw/scsi/virtio-scsi.c @@ -544,7 +544,7 @@ bool virtio_scsi_handle_cmd_req_prepare(VirtIOSCSI *s, VirtIOSCSIReq *req) } req->sreq = scsi_req_new(d, req->req.cmd.tag, virtio_scsi_get_lun(req->req.cmd.lun), - req->req.cdb, req); + req->req.cmd.cdb, req); if (req->sreq->cmd.mode != SCSI_XFER_NONE && (req->sreq->cmd.mode != req->mode || -- MST