From: Greg Kurz <gkurz@linux.vnet.ibm.com>
To: afaerber@suse.de
Cc: kwolf@redhat.com, peter.maydell@linaro.org,
thuth@linux.vnet.ibm.com, mst@redhat.com, marc.zyngier@arm.com,
rusty@rustcorp.com.au, agraf@suse.de, qemu-devel@nongnu.org,
stefanha@redhat.com, cornelia.huck@de.ibm.com,
pbonzini@redhat.com, anthony@codemonkey.ws
Subject: [Qemu-devel] [PATCH v5 6/8] virtio-scsi: use virtio wrappers to access headers
Date: Fri, 21 Feb 2014 12:28:51 +0100 [thread overview]
Message-ID: <20140221112850.15111.37546.stgit@bahia.local> (raw)
In-Reply-To: <20140221112802.15111.10669.stgit@bahia.local>
From: Rusty Russell <rusty@rustcorp.com.au>
Note that st*_raw and ld*_raw are effectively replaced by st*_p and ld*_p.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
---
hw/scsi/virtio-scsi.c | 33 +++++++++++++++++----------------
1 file changed, 17 insertions(+), 16 deletions(-)
diff --git a/hw/scsi/virtio-scsi.c b/hw/scsi/virtio-scsi.c
index 6610b3a..df6c0e2 100644
--- a/hw/scsi/virtio-scsi.c
+++ b/hw/scsi/virtio-scsi.c
@@ -18,6 +18,7 @@
#include <hw/scsi/scsi.h>
#include <block/scsi.h>
#include <hw/virtio/virtio-bus.h>
+#include "hw/virtio/virtio-access.h"
typedef struct VirtIOSCSIReq {
VirtIOSCSI *dev;
@@ -313,12 +314,12 @@ static void virtio_scsi_command_complete(SCSIRequest *r, uint32_t status,
req->resp.cmd->response = VIRTIO_SCSI_S_OK;
req->resp.cmd->status = status;
if (req->resp.cmd->status == GOOD) {
- req->resp.cmd->resid = tswap32(resid);
+ req->resp.cmd->resid = virtio_tswap32(resid);
} else {
req->resp.cmd->resid = 0;
sense_len = scsi_req_get_sense(r, req->resp.cmd->sense,
VIRTIO_SCSI_SENSE_SIZE);
- req->resp.cmd->sense_len = tswap32(sense_len);
+ req->resp.cmd->sense_len = virtio_tswap32(sense_len);
}
virtio_scsi_complete_req(req);
}
@@ -414,16 +415,16 @@ static void virtio_scsi_get_config(VirtIODevice *vdev,
VirtIOSCSIConfig *scsiconf = (VirtIOSCSIConfig *)config;
VirtIOSCSICommon *s = VIRTIO_SCSI_COMMON(vdev);
- stl_raw(&scsiconf->num_queues, s->conf.num_queues);
- stl_raw(&scsiconf->seg_max, 128 - 2);
- stl_raw(&scsiconf->max_sectors, s->conf.max_sectors);
- stl_raw(&scsiconf->cmd_per_lun, s->conf.cmd_per_lun);
- stl_raw(&scsiconf->event_info_size, sizeof(VirtIOSCSIEvent));
- stl_raw(&scsiconf->sense_size, s->sense_size);
- stl_raw(&scsiconf->cdb_size, s->cdb_size);
- stw_raw(&scsiconf->max_channel, VIRTIO_SCSI_MAX_CHANNEL);
- stw_raw(&scsiconf->max_target, VIRTIO_SCSI_MAX_TARGET);
- stl_raw(&scsiconf->max_lun, VIRTIO_SCSI_MAX_LUN);
+ virtio_stl_p(&scsiconf->num_queues, s->conf.num_queues);
+ virtio_stl_p(&scsiconf->seg_max, 128 - 2);
+ virtio_stl_p(&scsiconf->max_sectors, s->conf.max_sectors);
+ virtio_stl_p(&scsiconf->cmd_per_lun, s->conf.cmd_per_lun);
+ virtio_stl_p(&scsiconf->event_info_size, sizeof(VirtIOSCSIEvent));
+ virtio_stl_p(&scsiconf->sense_size, s->sense_size);
+ virtio_stl_p(&scsiconf->cdb_size, s->cdb_size);
+ virtio_stw_p(&scsiconf->max_channel, VIRTIO_SCSI_MAX_CHANNEL);
+ virtio_stw_p(&scsiconf->max_target, VIRTIO_SCSI_MAX_TARGET);
+ virtio_stl_p(&scsiconf->max_lun, VIRTIO_SCSI_MAX_LUN);
}
static void virtio_scsi_set_config(VirtIODevice *vdev,
@@ -432,14 +433,14 @@ static void virtio_scsi_set_config(VirtIODevice *vdev,
VirtIOSCSIConfig *scsiconf = (VirtIOSCSIConfig *)config;
VirtIOSCSICommon *vs = VIRTIO_SCSI_COMMON(vdev);
- if ((uint32_t) ldl_raw(&scsiconf->sense_size) >= 65536 ||
- (uint32_t) ldl_raw(&scsiconf->cdb_size) >= 256) {
+ if ((uint32_t) virtio_ldl_p(&scsiconf->sense_size) >= 65536 ||
+ (uint32_t) virtio_ldl_p(&scsiconf->cdb_size) >= 256) {
error_report("bad data written to virtio-scsi configuration space");
exit(1);
}
- vs->sense_size = ldl_raw(&scsiconf->sense_size);
- vs->cdb_size = ldl_raw(&scsiconf->cdb_size);
+ vs->sense_size = virtio_ldl_p(&scsiconf->sense_size);
+ vs->cdb_size = virtio_ldl_p(&scsiconf->cdb_size);
}
static uint32_t virtio_scsi_get_features(VirtIODevice *vdev,
next prev parent reply other threads:[~2014-02-21 11:29 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-21 11:28 [Qemu-devel] [PATCH v5 0/8] virtio endian-ambivalent target fixes Greg Kurz
2014-02-21 11:28 ` [Qemu-devel] [PATCH v5 1/8] virtio_get_byteswap: function for endian-ambivalent targets using virtio Greg Kurz
2014-02-25 15:21 ` Stefan Hajnoczi
2014-02-25 15:59 ` Greg Kurz
2014-02-21 11:28 ` [Qemu-devel] [PATCH v5 2/8] virtio: allow byte swapping for vring and config access Greg Kurz
2014-02-21 11:28 ` [Qemu-devel] [PATCH v5 3/8] virtio-net: use virtio wrappers to access headers Greg Kurz
2014-02-21 11:28 ` [Qemu-devel] [PATCH v5 4/8] virtio-balloon: use virtio wrappers to access page frame numbers Greg Kurz
2014-02-21 11:28 ` [Qemu-devel] [PATCH v5 5/8] virtio-blk: use virtio wrappers to access headers Greg Kurz
2014-02-21 11:28 ` Greg Kurz [this message]
2014-02-21 11:28 ` [Qemu-devel] [PATCH v5 7/8] virtio-serial-bus: " Greg Kurz
2014-02-21 11:29 ` [Qemu-devel] [PATCH v5 8/8] virtio-9p: " Greg Kurz
2014-02-25 15:22 ` [Qemu-devel] [PATCH v5 0/8] virtio endian-ambivalent target fixes Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140221112850.15111.37546.stgit@bahia.local \
--to=gkurz@linux.vnet.ibm.com \
--cc=afaerber@suse.de \
--cc=agraf@suse.de \
--cc=anthony@codemonkey.ws \
--cc=cornelia.huck@de.ibm.com \
--cc=kwolf@redhat.com \
--cc=marc.zyngier@arm.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=rusty@rustcorp.com.au \
--cc=stefanha@redhat.com \
--cc=thuth@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).